diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 98a3d729a..6b860b53c 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -12,7 +12,7 @@ jobs: continue-on-error: ${{ matrix.experimental }} strategy: matrix: - php-version: ["7.2", "7.3", "7.4", "8.0", "8.1", "8.2"] + php-version: ["7.2", "7.3", "7.4", "8.0", "8.1", "8.2", "8.3"] os: [ubuntu-latest] experimental: [false] composer-options: [''] @@ -67,7 +67,7 @@ jobs: continue-on-error: ${{ matrix.experimental }} strategy: matrix: - php-version: ["7.2", "7.3", "7.4", "8.0", "8.1", "8.2"] + php-version: ["7.2", "7.3", "7.4", "8.0", "8.1", "8.2", "8.3"] os: [ubuntu-latest] experimental: [false] composer-options: [''] diff --git a/CHANGELOG.md b/CHANGELOG.md index e51f89481..822663044 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,18 @@ # Change Log +## [5.10.0] - 2024-08-29 + +- Fix parsing of UPDATE ... SET (#577) +- Fix parsing of WITH PARSER (#563) +- Fix context files for MySQL and MariaDB (#572) (#576) +- Allow using `::class` keyword to load a context (#571) +- Fix query flags for lower-case functions (#564) +- Improve context files by using constants (#570) +- Fix case when a condition is not parsed correctly (#560) +- Support parsing KILL statements (#556) +- Fix replace clause of select statement with FOR UPDATE (#555) +- Add support for ALTER FUNCTION and ALTER PROCEDURE statements (#553) + ## [5.9.1] - 2024-08-13 - Allow parsing ALTER TABLE statement with column check constraint (#554) @@ -566,5 +579,6 @@ __Breaking changes:__ * First release of this library. +[5.10.0]: https://github.com/phpmyadmin/sql-parser/compare/5.9.1...5.10.0 [5.9.1]: https://github.com/phpmyadmin/sql-parser/compare/5.9.0...5.9.1 [5.9.0]: https://github.com/phpmyadmin/sql-parser/compare/5.8.2...5.9.0 diff --git a/phpcs.xml.dist b/phpcs.xml.dist index d7ae18e54..97751b995 100644 --- a/phpcs.xml.dist +++ b/phpcs.xml.dist @@ -19,6 +19,10 @@ + + src/Contexts/* + + diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon index 878a51123..24e1cddcd 100644 --- a/phpstan-baseline.neon +++ b/phpstan-baseline.neon @@ -801,7 +801,12 @@ parameters: path: src/Tools/ContextGenerator.php - - message: "#^Offset 'keywords' on array\\{name\\: string, class\\: string, link\\: string, keywords\\: array\\\\>\\>\\} in isset\\(\\) always exists and is not nullable\\.$#" + message: "#^Offset 1 does not exist on array\\{0\\?\\: string, 1\\?\\: non\\-empty\\-string, 2\\?\\: numeric\\-string\\}\\.$#" + count: 1 + path: src/Tools/ContextGenerator.php + + - + message: "#^Offset 2 does not exist on array\\{0\\?\\: string, 1\\?\\: non\\-empty\\-string, 2\\?\\: numeric\\-string\\}\\.$#" count: 1 path: src/Tools/ContextGenerator.php @@ -955,6 +960,11 @@ parameters: count: 1 path: src/Utils/Query.php + - + message: "#^Parameter \\#1 \\$str of function strtoupper expects string, mixed given\\.$#" + count: 1 + path: src/Utils/Query.php + - message: "#^Cannot access offset 'value' on mixed\\.$#" count: 3 @@ -1157,7 +1167,7 @@ parameters: - message: "#^Parameter \\#2 \\$list of static method PhpMyAdmin\\\\SqlParser\\\\Utils\\\\Query\\:\\:replaceClause\\(\\) expects PhpMyAdmin\\\\SqlParser\\\\TokensList, PhpMyAdmin\\\\SqlParser\\\\TokensList\\|null given\\.$#" - count: 4 + count: 5 path: tests/Utils/QueryTest.php - diff --git a/psalm-baseline.xml b/psalm-baseline.xml index 80d5bdb4a..2079bcdbe 100644 --- a/psalm-baseline.xml +++ b/psalm-baseline.xml @@ -629,6 +629,9 @@ + + + @@ -656,6 +659,12 @@ + + + + + + $this->last @@ -1160,15 +1169,6 @@ is_array($list) - - - $options['keywords'] - - - ++$i !== $count - ++$i !== $count - - $data[$property] @@ -1342,8 +1342,9 @@ int - + $expr + $expr->function $clauses[$token->keyword] @@ -1634,7 +1635,8 @@ - + + $parser->list $parser->list $parser->list $parser->list diff --git a/src/Components/AlterOperation.php b/src/Components/AlterOperation.php index 7abcff7a8..3e09c1cf1 100644 --- a/src/Components/AlterOperation.php +++ b/src/Components/AlterOperation.php @@ -248,6 +248,27 @@ class AlterOperation extends Component 'DO' => 10, ]; + /** + * All routine (procedure or function) options. + * + * @var array> + * @psalm-var array [ + 1, + 'var', + ], + 'LANGUAGE SQL' => 2, + 'CONTAINS SQL' => 3, + 'NO SQL' => 3, + 'READS SQL DATA' => 3, + 'MODIFIES SQL DATA' => 3, + 'SQL SECURITY' => 4, + 'DEFINER' => 5, + 'INVOKER' => 5, + ]; + /** * Options of this operation. * diff --git a/src/Components/Condition.php b/src/Components/Condition.php index 987e6b162..e29684ae3 100644 --- a/src/Components/Condition.php +++ b/src/Components/Condition.php @@ -153,7 +153,7 @@ public static function parse(Parser $parser, TokensList $list, array $options = } else { // The expression ended. $expr->expr = trim($expr->expr); - if (! empty($expr->expr)) { + if ($expr->expr !== '') { $ret[] = $expr; } @@ -214,7 +214,7 @@ public static function parse(Parser $parser, TokensList $list, array $options = // Last iteration was not processed. $expr->expr = trim($expr->expr); - if (! empty($expr->expr)) { + if ($expr->expr !== '') { $ret[] = $expr; } diff --git a/src/Context.php b/src/Context.php index df74170fe..3a67e142d 100644 --- a/src/Context.php +++ b/src/Context.php @@ -599,8 +599,13 @@ public static function load($context = '') } if ($context[0] !== '\\') { - // Short context name (must be formatted into class name). - $context = self::$contextPrefix . $context; + // Could be the fully qualified class name was given, like `ContextDBMS::class`. + if (class_exists('\\' . $context)) { + $context = '\\' . $context; + } else { + // Short context name (must be formatted into class name). + $context = self::$contextPrefix . $context; + } } if (! class_exists($context)) { diff --git a/src/Contexts/ContextMariaDb100000.php b/src/Contexts/ContextMariaDb100000.php index 0eb57f8a1..8401038b7 100644 --- a/src/Contexts/ContextMariaDb100000.php +++ b/src/Contexts/ContextMariaDb100000.php @@ -22,286 +22,993 @@ class ContextMariaDb100000 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, 'PREV' => 1, - 'ROWS' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, 'QUERY' => 1, - 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, 'SHARE' => 1, - 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, 'TYPES' => 1, - 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, 'CLIENT' => 1, - 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, 'ESCAPE' => 1, - 'EVENTS' => 1, 'FAULTS' => 1, 'FIELDS' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, - 'IMPORT' => 1, 'INNODB' => 1, 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, - 'MEDIUM' => 1, 'MEMORY' => 1, 'MODIFY' => 1, 'OFFSET' => 1, 'PARSER' => 1, - 'PLUGIN' => 1, 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, - 'ROLLUP' => 1, 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, - 'SONAME' => 1, 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, - 'STRING' => 1, 'TABLES' => 1, - 'AUTHORS' => 1, 'CHANGED' => 1, 'COLUMNS' => 1, 'COMMENT' => 1, 'COMPACT' => 1, - 'CONTEXT' => 1, 'DEFINER' => 1, 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, - 'ENGINES' => 1, 'EXECUTE' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, - 'INSTALL' => 1, 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, - 'OPTIONS' => 1, 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, - 'REBUILD' => 1, 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, - 'SESSION' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'VIRTUAL' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXTENDED' => 1, - 'FUNCTION' => 1, 'INNOBASE' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'ONE_SHOT' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, - 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'IO_THREAD' => 1, 'ISOLATION' => 1, - 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, 'REDUNDANT' => 1, - 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, 'TEMPTABLE' => 1, - 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PRIVILEGES' => 1, - 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, 'SQL_THREAD' => 1, - 'TABLESPACE' => 1, 'TABLE_NAME' => 1, - 'COLUMN_NAME' => 1, 'CURSOR_NAME' => 1, 'EXTENT_SIZE' => 1, 'FRAC_SECOND' => 1, - 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, 'MYSQL_ERRNO' => 1, - 'PROCESSLIST' => 1, 'REPLICATION' => 1, 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, - 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'CONTRIBUTORS' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, 'RELAY_THREAD' => 1, - 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, 'SQL_TSI_WEEK' => 1, - 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, 'SQL_TSI_MONTH' => 1, - 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, 'SQL_TSI_SECOND' => 1, - 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'MASTER_LOG_FILE' => 1, - 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'IGNORE_SERVER_IDS' => 1, 'MASTER_SSL_CAPATH' => 1, - 'MASTER_SSL_CIPHER' => 1, 'SQL_BUFFER_RESULT' => 1, - 'CONSTRAINT_CATALOG' => 1, - 'SQL_TSI_FRAC_SECOND' => 1, - 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, 'MAX_UPDATES_PER_HOUR' => 1, - 'MAX_USER_CONNECTIONS' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, 'USE' => 3, - 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'READ' => 3, 'SHOW' => 3, 'THEN' => 3, 'TRUE' => 3, 'UNDO' => 3, - 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, - 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'PARTITION' => 3, 'PRECISION' => 3, - 'PROCEDURE' => 3, 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'TRIM' => 33, - 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'CONCAT' => 33, 'DECODE' => 33, 'ENCODE' => 33, - 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, 'LENGTH' => 33, - 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, 'SECOND' => 33, - 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'QUARTER' => 33, 'RADIANS' => 33, 'REVERSE' => 33, 'SOUNDEX' => 33, - 'SUBDATE' => 33, 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, - 'VAR_POP' => 33, 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'ENDPOINT' => 33, - 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, 'ISSIMPLE' => 33, - 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, 'MBREQUAL' => 33, 'OVERLAPS' => 33, - 'PASSWORD' => 33, 'POSITION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, 'CONCAT_WS' => 33, - 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, 'FROM_DAYS' => 33, - 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, 'LOAD_FILE' => 33, - 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, 'ROW_COUNT' => 33, - 'SUBSTRING' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'DAYOFMONTH' => 33, 'EXPORT_SET' => 33, - 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INTERSECTS' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'GEOMFROMWKB' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'LINEFROMTEXT' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RELEASE_LOCK' => 33, - 'SESSION_USER' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'INTERIORRINGN' => 33, 'MBRINTERSECTS' => 33, - 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, - 'POINTFROMTEXT' => 33, 'TIMESTAMPDIFF' => 33, - 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, 'POLYGONFROMWKB' => 33, 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'NUMINTERIORRINGS' => 33, - 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'MULTIPOINTFROMTEXT' => 33, - 'MULTIPOLYGONFROMWKB' => 33, 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTHORS' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CONTRIBUTORS' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FRAC_SECOND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INNOBASE' => Token::FLAG_KEYWORD, + 'INNODB' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONE_SHOT' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_FRAC_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'VIRTUAL' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb100100.php b/src/Contexts/ContextMariaDb100100.php index e31d9cf43..d76b86c9f 100644 --- a/src/Contexts/ContextMariaDb100100.php +++ b/src/Contexts/ContextMariaDb100100.php @@ -22,334 +22,1093 @@ class ContextMariaDb100100 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'ROWS' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, - 'TYPE' => 1, 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, - 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'IO_THREAD' => 1, 'ISOLATION' => 1, - 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, 'REDUNDANT' => 1, - 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, 'TEMPTABLE' => 1, - 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'READ' => 3, 'SHOW' => 3, 'THEN' => 3, 'TRUE' => 3, 'UNDO' => 3, - 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, - 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, 'UNLOCK' => 3, - 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'PARTITION' => 3, - 'PRECISION' => 3, 'PROCEDURE' => 3, 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb100200.php b/src/Contexts/ContextMariaDb100200.php index c1886bece..7a7b37964 100644 --- a/src/Contexts/ContextMariaDb100200.php +++ b/src/Contexts/ContextMariaDb100200.php @@ -22,335 +22,1073 @@ class ContextMariaDb100200 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, - 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'IO_THREAD' => 1, 'ISOLATION' => 1, - 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, 'REDUNDANT' => 1, - 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, 'TEMPTABLE' => 1, - 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, - 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, 'UNLOCK' => 3, - 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'PARTITION' => 3, - 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, 'SENSITIVE' => 3, - 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb100300.php b/src/Contexts/ContextMariaDb100300.php index f6b7b2d99..7fcbcbe3e 100644 --- a/src/Contexts/ContextMariaDb100300.php +++ b/src/Contexts/ContextMariaDb100300.php @@ -22,335 +22,1112 @@ class ContextMariaDb100300 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb100400.php b/src/Contexts/ContextMariaDb100400.php index 4dcbd8e2e..e215f9c24 100644 --- a/src/Contexts/ContextMariaDb100400.php +++ b/src/Contexts/ContextMariaDb100400.php @@ -22,335 +22,1151 @@ class ContextMariaDb100400 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb100500.php b/src/Contexts/ContextMariaDb100500.php index 8ff52f1ab..3c471f496 100644 --- a/src/Contexts/ContextMariaDb100500.php +++ b/src/Contexts/ContextMariaDb100500.php @@ -22,335 +22,1155 @@ class ContextMariaDb100500 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb100600.php b/src/Contexts/ContextMariaDb100600.php index 64cff6b0d..d1525200d 100644 --- a/src/Contexts/ContextMariaDb100600.php +++ b/src/Contexts/ContextMariaDb100600.php @@ -22,335 +22,1157 @@ class ContextMariaDb100600 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb100700.php b/src/Contexts/ContextMariaDb100700.php index ae90e4483..2b2840b41 100644 --- a/src/Contexts/ContextMariaDb100700.php +++ b/src/Contexts/ContextMariaDb100700.php @@ -22,335 +22,1161 @@ class ContextMariaDb100700 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb100800.php b/src/Contexts/ContextMariaDb100800.php index ddd875742..538a9a857 100644 --- a/src/Contexts/ContextMariaDb100800.php +++ b/src/Contexts/ContextMariaDb100800.php @@ -22,335 +22,1162 @@ class ContextMariaDb100800 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb100900.php b/src/Contexts/ContextMariaDb100900.php index 02bf12f83..3b72fc34f 100644 --- a/src/Contexts/ContextMariaDb100900.php +++ b/src/Contexts/ContextMariaDb100900.php @@ -22,335 +22,1159 @@ class ContextMariaDb100900 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb101000.php b/src/Contexts/ContextMariaDb101000.php index 59d83a3e1..f600d24d5 100644 --- a/src/Contexts/ContextMariaDb101000.php +++ b/src/Contexts/ContextMariaDb101000.php @@ -22,335 +22,1160 @@ class ContextMariaDb101000 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb101100.php b/src/Contexts/ContextMariaDb101100.php index 0d363b066..35f43fa8a 100644 --- a/src/Contexts/ContextMariaDb101100.php +++ b/src/Contexts/ContextMariaDb101100.php @@ -22,335 +22,1160 @@ class ContextMariaDb101100 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb110000.php b/src/Contexts/ContextMariaDb110000.php index 06a33f2da..7d937bedd 100644 --- a/src/Contexts/ContextMariaDb110000.php +++ b/src/Contexts/ContextMariaDb110000.php @@ -22,335 +22,1161 @@ class ContextMariaDb110000 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb110100.php b/src/Contexts/ContextMariaDb110100.php index c3191317d..a3971d011 100644 --- a/src/Contexts/ContextMariaDb110100.php +++ b/src/Contexts/ContextMariaDb110100.php @@ -22,335 +22,1162 @@ class ContextMariaDb110100 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb110200.php b/src/Contexts/ContextMariaDb110200.php index 1924621f2..de24e201f 100644 --- a/src/Contexts/ContextMariaDb110200.php +++ b/src/Contexts/ContextMariaDb110200.php @@ -22,335 +22,1165 @@ class ContextMariaDb110200 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT_FILTER_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT_TO_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb110300.php b/src/Contexts/ContextMariaDb110300.php index 7b253b1a4..2597c5eaf 100644 --- a/src/Contexts/ContextMariaDb110300.php +++ b/src/Contexts/ContextMariaDb110300.php @@ -22,335 +22,1166 @@ class ContextMariaDb110300 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT_FILTER_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT_TO_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'KDF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb110400.php b/src/Contexts/ContextMariaDb110400.php index 0133b537a..2580ff9d8 100644 --- a/src/Contexts/ContextMariaDb110400.php +++ b/src/Contexts/ContextMariaDb110400.php @@ -22,335 +22,1166 @@ class ContextMariaDb110400 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SEQUENCE' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, - 'TRIGGERS' => 1, 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'ROWS' => 3, 'SHOW' => 3, 'THEN' => 3, - 'TRUE' => 3, 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'EXCEPT' => 3, 'HAVING' => 3, 'IGNORE' => 3, - 'INFILE' => 3, 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, - 'RETURN' => 3, 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, - 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'INTERSECT' => 3, - 'PARTITION' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, 'RECURSIVE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, 'IDENTIFIED VIA' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'WSREP_LAST_SEEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_LAST_WRITTEN_GTID' => Token::FLAG_KEYWORD, + 'WSREP_SYNC_WAIT_UPTO_GTID' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADD_MONTHS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BINLOG_GTID_POS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLUMN_LIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32C' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_HISTOGRAM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_COMPACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DETAILED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LOOSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_NORMALIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT_FILTER_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT_TO_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUERY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'KDF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LASTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTHB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_GTID_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MEDIAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NATURAL_SORT_KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NEXTVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NVL2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_CONT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENTILE_DISC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SETVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SFORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BOUNDARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTONSURFACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYS_GUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM_ORACLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMariaDb110500.php b/src/Contexts/ContextMariaDb110500.php new file mode 100644 index 000000000..26e741980 --- /dev/null +++ b/src/Contexts/ContextMariaDb110500.php @@ -0,0 +1,1096 @@ + + * @phpstan-var non-empty-array + */ + public static $KEYWORDS = [ + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SEQUENCE' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXCEPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTERSECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OFFSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RECURSIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED VIA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + ]; +} diff --git a/src/Contexts/ContextMySql50000.php b/src/Contexts/ContextMySql50000.php index a45d48dbf..78c8ad923 100644 --- a/src/Contexts/ContextMySql50000.php +++ b/src/Contexts/ContextMySql50000.php @@ -22,257 +22,805 @@ class ContextMySql50000 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'BDB' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, - 'NEW' => 1, 'ONE' => 1, 'ROW' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'FAST' => 1, 'FILE' => 1, - 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'LAST' => 1, 'LOGS' => 1, 'MODE' => 1, - 'NAME' => 1, 'NEXT' => 1, 'NONE' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PREV' => 1, - 'ROWS' => 1, 'SOME' => 1, 'STOP' => 1, 'TYPE' => 1, 'VIEW' => 1, 'WORK' => 1, - 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, - 'HOSTS' => 1, 'LEVEL' => 1, 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, - 'MUTEX' => 1, 'NAMES' => 1, 'NCHAR' => 1, 'PHASE' => 1, 'QUERY' => 1, - 'QUICK' => 1, 'RAID0' => 1, 'RESET' => 1, 'RTREE' => 1, 'SHARE' => 1, - 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, 'TYPES' => 1, - 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, 'CLIENT' => 1, - 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, 'ESCAPE' => 1, - 'EVENTS' => 1, 'FAULTS' => 1, 'FIELDS' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, - 'IMPORT' => 1, 'INNODB' => 1, 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, - 'MEDIUM' => 1, 'MEMORY' => 1, 'MODIFY' => 1, 'OFFSET' => 1, 'RELOAD' => 1, - 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STATUS' => 1, 'STRING' => 1, 'TABLES' => 1, - 'CHANGED' => 1, 'COLUMNS' => 1, 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, - 'DEFINER' => 1, 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, - 'EXECUTE' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INVOKER' => 1, 'MIGRATE' => 1, - 'PARTIAL' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'RECOVER' => 1, 'RESTORE' => 1, - 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, 'STORAGE' => 1, 'STRIPED' => 1, - 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, 'UNKNOWN' => 1, 'UPGRADE' => 1, - 'USE_FRM' => 1, 'VIRTUAL' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DUMPFILE' => 1, 'EXTENDED' => 1, 'FUNCTION' => 1, - 'INNOBASE' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MIN_ROWS' => 1, 'NATIONAL' => 1, - 'NVARCHAR' => 1, 'ONE_SHOT' => 1, 'PROFILES' => 1, 'ROLLBACK' => 1, 'SECURITY' => 1, - 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'IO_THREAD' => 1, 'ISOLATION' => 1, - 'PACK_KEYS' => 1, 'RAID_TYPE' => 1, 'REDUNDANT' => 1, 'SAVEPOINT' => 1, - 'SQL_CACHE' => 1, 'TEMPORARY' => 1, 'TEMPTABLE' => 1, 'UNDEFINED' => 1, - 'VARIABLES' => 1, - 'BERKELEYDB' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PRIVILEGES' => 1, - 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, 'SQL_THREAD' => 1, 'TABLESPACE' => 1, - 'FRAC_SECOND' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'PROCESSLIST' => 1, 'RAID_CHUNKS' => 1, 'REPLICATION' => 1, 'SQL_TSI_DAY' => 1, - 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'DES_KEY_FILE' => 1, 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, - 'SQL_TSI_HOUR' => 1, 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, - 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, 'SQL_TSI_MONTH' => 1, - 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'MASTER_LOG_POS' => 1, 'MASTER_SSL_KEY' => 1, - 'RAID_CHUNKSIZE' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, 'SQL_TSI_SECOND' => 1, - 'USER_RESOURCES' => 1, - 'DELAY_KEY_WRITE' => 1, 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, - 'SQL_TSI_QUARTER' => 1, - 'MASTER_SERVER_ID' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'SQL_BUFFER_RESULT' => 1, - 'SQL_TSI_FRAC_SECOND' => 1, - 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, 'MAX_UPDATES_PER_HOUR' => 1, - 'MAX_USER_CONNECTIONS' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, 'USE' => 3, - 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'READ' => 3, 'SHOW' => 3, 'THEN' => 3, 'TRUE' => 3, 'UNDO' => 3, - 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, 'UNION' => 3, - 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, 'REVOKE' => 3, - 'SELECT' => 3, 'SONAME' => 3, 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESTRICT' => 3, 'SPECIFIC' => 3, 'SQLSTATE' => 3, - 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, 'DAY_SECOND' => 3, - 'OPTIONALLY' => 3, 'REFERENCES' => 3, 'SQLWARNING' => 3, 'TERMINATED' => 3, - 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'STARTING BY' => 7, 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'TRIM' => 33, 'USER' => 33, - 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ATAN2' => 33, 'COUNT' => 33, 'CRC32' => 33, 'FIELD' => 33, - 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, 'LEAST' => 33, 'LOG10' => 33, - 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, 'POWER' => 33, 'QUOTE' => 33, - 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, 'SPACE' => 33, 'UCASE' => 33, - 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'CONCAT' => 33, 'DECODE' => 33, 'ENCODE' => 33, - 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, 'LENGTH' => 33, - 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, 'SECOND' => 33, - 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'QUARTER' => 33, 'RADIANS' => 33, 'REVERSE' => 33, 'SOUNDEX' => 33, - 'SUBDATE' => 33, 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, - 'VAR_POP' => 33, 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'ENDPOINT' => 33, - 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, 'ISSIMPLE' => 33, - 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, 'MBREQUAL' => 33, 'OVERLAPS' => 33, - 'PASSWORD' => 33, 'POSITION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, 'CONCAT_WS' => 33, - 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, 'FROM_DAYS' => 33, - 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, 'LOAD_FILE' => 33, - 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, 'ROW_COUNT' => 33, - 'SUBSTRING' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'DAYOFMONTH' => 33, 'EXPORT_SET' => 33, - 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INTERSECTS' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'UNCOMPRESS' => 33, 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'GEOMFROMWKB' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'GEOMETRYTYPE' => 33, 'GEOMFROMTEXT' => 33, - 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, 'LINEFROMTEXT' => 33, - 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, 'OLD_PASSWORD' => 33, - 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, - 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'INTERIORRINGN' => 33, 'MBRINTERSECTS' => 33, - 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, - 'POINTFROMTEXT' => 33, 'TIMESTAMPDIFF' => 33, - 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'NUMINTERIORRINGS' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BDB' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BERKELEYDB' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FRAC_SECOND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INNOBASE' => Token::FLAG_KEYWORD, + 'INNODB' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONE_SHOT' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'RAID0' => Token::FLAG_KEYWORD, + 'RAID_CHUNKS' => Token::FLAG_KEYWORD, + 'RAID_CHUNKSIZE' => Token::FLAG_KEYWORD, + 'RAID_TYPE' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_FRAC_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'STRIPED' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'VIRTUAL' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SONAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMySql50100.php b/src/Contexts/ContextMySql50100.php index c19c10bb6..7f0609e97 100644 --- a/src/Contexts/ContextMySql50100.php +++ b/src/Contexts/ContextMySql50100.php @@ -22,280 +22,883 @@ class ContextMySql50100 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'BDB' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, - 'NEW' => 1, 'ONE' => 1, 'ROW' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'GOTO' => 1, 'HASH' => 1, 'HELP' => 1, - 'HOST' => 1, 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, - 'NAME' => 1, 'NEXT' => 1, 'NONE' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'ROWS' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'EVENT' => 1, 'EVERY' => 1, 'FIRST' => 1, - 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LABEL' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'OWNER' => 1, 'PHASE' => 1, 'QUERY' => 1, 'QUICK' => 1, - 'RAID0' => 1, 'RESET' => 1, 'RTREE' => 1, 'SHARE' => 1, 'SLAVE' => 1, - 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, 'TYPES' => 1, 'UNTIL' => 1, - 'VALUE' => 1, - 'ACTION' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, 'CLIENT' => 1, - 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, 'ESCAPE' => 1, - 'EVENTS' => 1, 'FAULTS' => 1, 'FIELDS' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, - 'IMPORT' => 1, 'INNODB' => 1, 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, - 'MEDIUM' => 1, 'MEMORY' => 1, 'MODIFY' => 1, 'OFFSET' => 1, 'PARSER' => 1, - 'PLUGIN' => 1, 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, - 'ROLLUP' => 1, 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, - 'SONAME' => 1, 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, - 'STRING' => 1, 'TABLES' => 1, - 'AUTHORS' => 1, 'CHANGED' => 1, 'COLUMNS' => 1, 'COMMENT' => 1, 'COMPACT' => 1, - 'CONTEXT' => 1, 'DEFINER' => 1, 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, - 'ENGINES' => 1, 'EXECUTE' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STORAGE' => 1, 'STRIPED' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'VIRTUAL' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXTENDED' => 1, - 'FUNCTION' => 1, 'INNOBASE' => 1, 'LANGUAGE' => 1, 'MAXVALUE' => 1, 'MAX_ROWS' => 1, - 'MAX_SIZE' => 1, 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'ONE_SHOT' => 1, - 'PRESERVE' => 1, 'PROFILES' => 1, 'REDOFILE' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, - 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'IO_THREAD' => 1, 'ISOLATION' => 1, - 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'PARTITION' => 1, 'RAID_TYPE' => 1, - 'READ_ONLY' => 1, 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SCHEDULER' => 1, - 'SQL_CACHE' => 1, 'TEMPORARY' => 1, 'TEMPTABLE' => 1, 'UNDEFINED' => 1, - 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'BERKELEYDB' => 1, 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, - 'CONNECTION' => 1, 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, - 'MASTER_SSL' => 1, 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, - 'PRIVILEGES' => 1, 'REORGANISE' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, - 'ROW_FORMAT' => 1, 'SQL_THREAD' => 1, 'TABLESPACE' => 1, - 'EXTENT_SIZE' => 1, 'FRAC_SECOND' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, - 'MASTER_USER' => 1, 'PROCESSLIST' => 1, 'RAID_CHUNKS' => 1, 'REPLICATION' => 1, - 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CONTRIBUTORS' => 1, 'DES_KEY_FILE' => 1, 'INITIAL_SIZE' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'PAGE_CHECKSUM' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, 'TRANSACTIONAL' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_KEY' => 1, 'RAID_CHUNKSIZE' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'DELAY_KEY_WRITE' => 1, 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, - 'MASTER_SSL_CERT' => 1, 'SQL_TSI_QUARTER' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'SQL_BUFFER_RESULT' => 1, - 'SQL_TSI_FRAC_SECOND' => 1, - 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, 'MAX_UPDATES_PER_HOUR' => 1, - 'MAX_USER_CONNECTIONS' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, 'USE' => 3, - 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'READ' => 3, 'SHOW' => 3, 'THEN' => 3, 'TRUE' => 3, 'UNDO' => 3, - 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, - 'REVOKE' => 3, 'SELECT' => 3, 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESTRICT' => 3, 'SPECIFIC' => 3, 'SQLSTATE' => 3, - 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'TRIM' => 33, 'USER' => 33, - 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'DECOD' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, - 'LCASE' => 33, 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, - 'MONTH' => 33, 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, - 'SLEEP' => 33, 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'CONCAT' => 33, 'ENCODE' => 33, 'EQUALS' => 33, - 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, 'LENGTH' => 33, 'LOCATE' => 33, - 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, 'SECOND' => 33, 'STDDEV' => 33, - 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'QUARTER' => 33, 'RADIANS' => 33, 'REVERSE' => 33, 'SOUNDEX' => 33, - 'SUBDATE' => 33, 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, - 'VAR_POP' => 33, 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'ENDPOINT' => 33, - 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, 'ISSIMPLE' => 33, - 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, 'MBREQUAL' => 33, 'OVERLAPS' => 33, - 'PASSWORD' => 33, 'POSITION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, 'CONCAT_WS' => 33, - 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, 'FROM_DAYS' => 33, - 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, 'LOAD_FILE' => 33, - 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, 'ROW_COUNT' => 33, - 'SUBSTRING' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'DAYOFMONTH' => 33, 'EXPORT_SET' => 33, - 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INTERSECTS' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'GEOMFROMWKB' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'LINEFROMTEXT' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RELEASE_LOCK' => 33, - 'SESSION_USER' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'INTERIORRINGN' => 33, 'MBRINTERSECTS' => 33, - 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, - 'POINTFROMTEXT' => 33, 'TIMESTAMPDIFF' => 33, - 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, 'POLYGONFROMWKB' => 33, 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'NUMINTERIORRINGS' => 33, - 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'MULTIPOINTFROMTEXT' => 33, - 'MULTIPOLYGONFROMWKB' => 33, 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTHORS' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BDB' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BERKELEYDB' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CONTRIBUTORS' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FRAC_SECOND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GOTO' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INNOBASE' => Token::FLAG_KEYWORD, + 'INNODB' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LABEL' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAXVALUE' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONE_SHOT' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PAGE_CHECKSUM' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITION' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'RAID0' => Token::FLAG_KEYWORD, + 'RAID_CHUNKS' => Token::FLAG_KEYWORD, + 'RAID_CHUNKSIZE' => Token::FLAG_KEYWORD, + 'RAID_TYPE' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANISE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEDULER' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_FRAC_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'STRIPED' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRANSACTIONAL' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'VIRTUAL' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMySql50500.php b/src/Contexts/ContextMySql50500.php index 51c41fc81..c17f9c9c7 100644 --- a/src/Contexts/ContextMySql50500.php +++ b/src/Contexts/ContextMySql50500.php @@ -22,285 +22,894 @@ class ContextMySql50500 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, 'PREV' => 1, - 'ROWS' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, 'TYPE' => 1, - 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, 'QUERY' => 1, - 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, 'SHARE' => 1, - 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, 'TYPES' => 1, - 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, 'CLIENT' => 1, - 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, 'ESCAPE' => 1, - 'EVENTS' => 1, 'FAULTS' => 1, 'FIELDS' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, - 'IMPORT' => 1, 'INNODB' => 1, 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, - 'MEDIUM' => 1, 'MEMORY' => 1, 'MODIFY' => 1, 'OFFSET' => 1, 'PARSER' => 1, - 'PLUGIN' => 1, 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, - 'ROLLUP' => 1, 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, - 'SONAME' => 1, 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, - 'STRING' => 1, 'TABLES' => 1, - 'AUTHORS' => 1, 'CHANGED' => 1, 'COLUMNS' => 1, 'COMMENT' => 1, 'COMPACT' => 1, - 'CONTEXT' => 1, 'DEFINER' => 1, 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, - 'ENGINES' => 1, 'EXECUTE' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, - 'INSTALL' => 1, 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, - 'OPTIONS' => 1, 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, - 'REBUILD' => 1, 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, - 'SESSION' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'VIRTUAL' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXTENDED' => 1, - 'FUNCTION' => 1, 'INNOBASE' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'ONE_SHOT' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, - 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'IO_THREAD' => 1, 'ISOLATION' => 1, - 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'PARTITION' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PRIVILEGES' => 1, - 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, 'SQL_THREAD' => 1, - 'TABLESPACE' => 1, 'TABLE_NAME' => 1, - 'COLUMN_NAME' => 1, 'CURSOR_NAME' => 1, 'EXTENT_SIZE' => 1, 'FRAC_SECOND' => 1, - 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, 'MYSQL_ERRNO' => 1, - 'PROCESSLIST' => 1, 'REPLICATION' => 1, 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, - 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'CONTRIBUTORS' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, 'RELAY_THREAD' => 1, - 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, 'SQL_TSI_WEEK' => 1, - 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, 'SQL_TSI_MONTH' => 1, - 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, 'SQL_TSI_SECOND' => 1, - 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'MASTER_LOG_FILE' => 1, - 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'IGNORE_SERVER_IDS' => 1, 'MASTER_SSL_CAPATH' => 1, - 'MASTER_SSL_CIPHER' => 1, 'SQL_BUFFER_RESULT' => 1, - 'CONSTRAINT_CATALOG' => 1, - 'SQL_TSI_FRAC_SECOND' => 1, - 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, 'MAX_UPDATES_PER_HOUR' => 1, - 'MAX_USER_CONNECTIONS' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, 'USE' => 3, - 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'READ' => 3, 'SHOW' => 3, 'THEN' => 3, 'TRUE' => 3, 'UNDO' => 3, - 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, - 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'PRECISION' => 3, 'PROCEDURE' => 3, - 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'TRIM' => 33, - 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'CONCAT' => 33, 'DECODE' => 33, 'ENCODE' => 33, - 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, 'LENGTH' => 33, - 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, 'SECOND' => 33, - 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'QUARTER' => 33, 'RADIANS' => 33, 'REVERSE' => 33, 'SOUNDEX' => 33, - 'SUBDATE' => 33, 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, - 'VAR_POP' => 33, 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'ENDPOINT' => 33, - 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, 'ISSIMPLE' => 33, - 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, 'MBREQUAL' => 33, 'OVERLAPS' => 33, - 'PASSWORD' => 33, 'POSITION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, 'CONCAT_WS' => 33, - 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, 'FROM_DAYS' => 33, - 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, 'LOAD_FILE' => 33, - 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, 'ROW_COUNT' => 33, - 'SUBSTRING' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'DAYOFMONTH' => 33, 'EXPORT_SET' => 33, - 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INTERSECTS' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'GEOMFROMWKB' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'LINEFROMTEXT' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RELEASE_LOCK' => 33, - 'SESSION_USER' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'INTERIORRINGN' => 33, 'MBRINTERSECTS' => 33, - 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, - 'POINTFROMTEXT' => 33, 'TIMESTAMPDIFF' => 33, - 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, 'POLYGONFROMWKB' => 33, 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'NUMINTERIORRINGS' => 33, - 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'MULTIPOINTFROMTEXT' => 33, - 'MULTIPOLYGONFROMWKB' => 33, 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTHORS' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CONTRIBUTORS' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FRAC_SECOND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INNOBASE' => Token::FLAG_KEYWORD, + 'INNODB' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONE_SHOT' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITION' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_FRAC_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'VIRTUAL' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMySql50600.php b/src/Contexts/ContextMySql50600.php index 3ba87bb3c..3710cb96c 100644 --- a/src/Contexts/ContextMySql50600.php +++ b/src/Contexts/ContextMySql50600.php @@ -22,311 +22,992 @@ class ContextMySql50600 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'ROWS' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, - 'TYPE' => 1, 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, 'QUERY' => 1, - 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, 'SHARE' => 1, - 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, 'TYPES' => 1, - 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, 'CLIENT' => 1, - 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, 'ESCAPE' => 1, - 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, 'FIELDS' => 1, - 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, 'ISSUER' => 1, 'LEAVES' => 1, - 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, 'MODIFY' => 1, 'NUMBER' => 1, - 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, 'RELOAD' => 1, 'REMOVE' => 1, - 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, 'SERVER' => 1, 'SIGNED' => 1, - 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, 'SOUNDS' => 1, 'SOURCE' => 1, - 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, 'TABLES' => 1, - 'ANALYSE' => 1, 'AUTHORS' => 1, 'CHANGED' => 1, 'COLUMNS' => 1, 'COMMENT' => 1, - 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, 'DISABLE' => 1, - 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, 'GENERAL' => 1, - 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, 'INVOKER' => 1, 'LOGFILE' => 1, - 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, 'PARTIAL' => 1, 'PLUGINS' => 1, - 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, 'RECOVER' => 1, 'RESTORE' => 1, - 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, - 'SUSPEND' => 1, 'UNICODE' => 1, 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, - 'VIRTUAL' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'ONE_SHOT' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, - 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'IO_THREAD' => 1, 'ISOLATION' => 1, - 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, 'REDUNDANT' => 1, - 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, 'TEMPTABLE' => 1, - 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, - 'COLUMN_NAME' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, 'EXTENT_SIZE' => 1, - 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, 'MYSQL_ERRNO' => 1, - 'PROCESSLIST' => 1, 'REPLICATION' => 1, 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, - 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'CONTRIBUTORS' => 1, 'DEFAULT_AUTH' => 1, - 'DES_KEY_FILE' => 1, 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, - 'PARTITIONING' => 1, 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, - 'SQL_TSI_HOUR' => 1, 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'MASTER_LOG_FILE' => 1, - 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, - 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'IGNORE_SERVER_IDS' => 1, 'MASTER_SSL_CAPATH' => 1, - 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, 'SQL_BUFFER_RESULT' => 1, - 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'SQL_AFTER_MTS_GAPS' => 1, 'STATS_SAMPLE_PAGES' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'READ' => 3, 'SHOW' => 3, 'THEN' => 3, 'TRUE' => 3, 'UNDO' => 3, - 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, - 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'UNLOCK' => 3, 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'PARTITION' => 3, 'PRECISION' => 3, - 'PROCEDURE' => 3, 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'ENDPOINT' => 33, - 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, 'ISSIMPLE' => 33, - 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, 'MBREQUAL' => 33, 'OVERLAPS' => 33, - 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, 'ST_ASWKT' => 33, 'ST_UNION' => 33, - 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, 'CONCAT_WS' => 33, - 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, 'FROM_DAYS' => 33, - 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, 'LOAD_FILE' => 33, - 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, 'ROW_COUNT' => 33, - 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, 'ST_POINTN' => 33, - 'ST_WITHIN' => 33, 'SUBSTRING' => 33, 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'DAYOFMONTH' => 33, 'EXPORT_SET' => 33, - 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, 'INET6_NTOA' => 33, - 'INTERSECTS' => 33, 'MBRTOUCHES' => 33, 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, - 'STARTPOINT' => 33, 'STDDEV_POP' => 33, 'ST_CROSSES' => 33, 'ST_ISEMPTY' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, - 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, - 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, - 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, - 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, - 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'LINEFROMTEXT' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_DIMENSION' => 33, 'ST_GEOMETRYN' => 33, - 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'CREATE_DIGEST' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, - 'INTERIORRINGN' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_DIFFERENCE' => 33, - 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'ASYMMETRIC_SIGN' => 33, 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, - 'ST_EXTERIORRING' => 33, 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, - 'ST_LINEFROMTEXT' => 33, 'ST_POINTFROMWKB' => 33, 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, 'ST_NUMGEOMETRIES' => 33, - 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'ASYMMETRIC_DERIVE' => 33, 'ASYMMETRIC_VERIFY' => 33, 'LINESTRINGFROMWKB' => 33, - 'MULTIPOINTFROMWKB' => 33, 'ST_POLYGONFROMWKB' => 33, - 'ASYMMETRIC_DECRYPT' => 33, 'ASYMMETRIC_ENCRYPT' => 33, 'MULTIPOINTFROMTEXT' => 33, - 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, 'ST_GEOMETRYFROMTEXT' => 33, - 'ST_NUMINTERIORRINGS' => 33, 'UNCOMPRESSED_LENGTH' => 33, - 'CREATE_DH_PARAMETERS' => 33, 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, - 'MULTILINESTRINGFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, - 'CREATE_ASYMMETRIC_PUB_KEY' => 33, 'GEOMETRYCOLLECTIONFROMWKB' => 33, - 'CREATE_ASYMMETRIC_PRIV_KEY' => 33, 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'SQL_THREAD_WAIT_AFTER_GTIDS' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTHORS' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CONTRIBUTORS' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONE_SHOT' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'VIRTUAL' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQL_THREAD_WAIT_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMySql50700.php b/src/Contexts/ContextMySql50700.php index 60076ce03..31ed49406 100644 --- a/src/Contexts/ContextMySql50700.php +++ b/src/Contexts/ContextMySql50700.php @@ -22,334 +22,1076 @@ class ContextMySql50700 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'ROWS' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, - 'TYPE' => 1, 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, 'REBUILD' => 1, - 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, 'SESSION' => 1, - 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, 'UNICODE' => 1, - 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, - 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'IO_THREAD' => 1, 'ISOLATION' => 1, - 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, 'REDUNDANT' => 1, - 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, 'TEMPTABLE' => 1, - 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, 'SQL_TSI_HOUR' => 1, - 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'READ' => 3, 'SHOW' => 3, 'THEN' => 3, 'TRUE' => 3, 'UNDO' => 3, - 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, - 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, 'UNLOCK' => 3, - 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'PARTITION' => 3, - 'PRECISION' => 3, 'PROCEDURE' => 3, 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'QUARTER' => 33, 'RADIANS' => 33, - 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, 'SUBDATE' => 33, - 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, 'VAR_POP' => 33, - 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'CHAR_LENGTH' => 33, 'DATE_FORMAT' => 33, - 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, 'FROM_BASE64' => 33, - 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, 'JSON_LENGTH' => 33, - 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, 'JSON_SEARCH' => 33, - 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, 'MBROVERLAPS' => 33, - 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, 'SEC_TO_TIME' => 33, - 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, 'ST_CENTROID' => 33, - 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, 'ST_ENDPOINT' => 33, - 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, 'ST_OVERLAPS' => 33, - 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, 'TIME_FORMAT' => 33, - 'TIME_TO_SEC' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMySql80000.php b/src/Contexts/ContextMySql80000.php index 25bdbf3bb..424e15a20 100644 --- a/src/Contexts/ContextMySql80000.php +++ b/src/Contexts/ContextMySql80000.php @@ -22,335 +22,1098 @@ class ContextMySql80000 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'ROWS' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, - 'TYPE' => 1, 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PERSIST' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, - 'REBUILD' => 1, 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, - 'SESSION' => 1, 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, - 'UNICODE' => 1, 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, - 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, - 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'PERSIST_ONLY' => 1, 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, - 'SQL_TSI_HOUR' => 1, 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'SHOW' => 3, 'THEN' => 3, 'TRUE' => 3, - 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, - 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, 'UNLOCK' => 3, - 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'PARTITION' => 3, - 'PRECISION' => 3, 'PROCEDURE' => 3, 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'IS_UUID' => 33, 'QUARTER' => 33, - 'RADIANS' => 33, 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, - 'SUBDATE' => 33, 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, - 'VAR_POP' => 33, 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'BIN_TO_UUID' => 33, 'CHAR_LENGTH' => 33, - 'DATE_FORMAT' => 33, 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, - 'FROM_BASE64' => 33, 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, - 'JSON_LENGTH' => 33, 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, - 'JSON_SEARCH' => 33, 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, - 'MBROVERLAPS' => 33, 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, - 'SEC_TO_TIME' => 33, 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, - 'ST_CENTROID' => 33, 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, - 'ST_ENDPOINT' => 33, 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, - 'ST_OVERLAPS' => 33, 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, - 'TIME_FORMAT' => 33, 'TIME_TO_SEC' => 33, 'UUID_TO_BIN' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTAINS' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSIST' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PERSIST_ONLY' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_RESET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUPING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_DISABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_ENABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_GET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_GET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_RESET_MEMBER_ACTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_AS_PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SWITCH_TO_MULTI_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SWITCH_TO_SINGLE_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALIDATION_REPORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PS_CURRENT_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PS_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MEMBER OF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMySql80100.php b/src/Contexts/ContextMySql80100.php index d2c6119d1..91cb1ef85 100644 --- a/src/Contexts/ContextMySql80100.php +++ b/src/Contexts/ContextMySql80100.php @@ -22,335 +22,1088 @@ class ContextMySql80100 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'ROWS' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, - 'TYPE' => 1, 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PERSIST' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, - 'REBUILD' => 1, 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, - 'SESSION' => 1, 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, - 'UNICODE' => 1, 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, - 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, - 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'PERSIST_ONLY' => 1, 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, - 'SQL_TSI_HOUR' => 1, 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'SHOW' => 3, 'THEN' => 3, 'TRUE' => 3, - 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, - 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, 'UNLOCK' => 3, - 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'PARTITION' => 3, - 'PRECISION' => 3, 'PROCEDURE' => 3, 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'IS_UUID' => 33, 'QUARTER' => 33, - 'RADIANS' => 33, 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, - 'SUBDATE' => 33, 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, - 'VAR_POP' => 33, 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'BIN_TO_UUID' => 33, 'CHAR_LENGTH' => 33, - 'DATE_FORMAT' => 33, 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, - 'FROM_BASE64' => 33, 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, - 'JSON_LENGTH' => 33, 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, - 'JSON_SEARCH' => 33, 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, - 'MBROVERLAPS' => 33, 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, - 'SEC_TO_TIME' => 33, 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, - 'ST_CENTROID' => 33, 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, - 'ST_ENDPOINT' => 33, 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, - 'ST_OVERLAPS' => 33, 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, - 'TIME_FORMAT' => 33, 'TIME_TO_SEC' => 33, 'UUID_TO_BIN' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTAINS' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSIST' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PERSIST_ONLY' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_RESET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUPING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_DISABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_ENABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_GET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_GET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_RESET_MEMBER_ACTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_AS_PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SWITCH_TO_MULTI_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SWITCH_TO_SINGLE_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALIDATION_REPORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PS_CURRENT_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PS_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MEMBER OF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMySql80200.php b/src/Contexts/ContextMySql80200.php index 091086f16..84e9d82cd 100644 --- a/src/Contexts/ContextMySql80200.php +++ b/src/Contexts/ContextMySql80200.php @@ -22,335 +22,1087 @@ class ContextMySql80200 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'ROWS' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, - 'TYPE' => 1, 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PERSIST' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, - 'REBUILD' => 1, 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, - 'SESSION' => 1, 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, - 'UNICODE' => 1, 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, - 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, - 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'PERSIST_ONLY' => 1, 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, - 'SQL_TSI_HOUR' => 1, 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'SHOW' => 3, 'THEN' => 3, 'TRUE' => 3, - 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, - 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, 'UNLOCK' => 3, - 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'PARTITION' => 3, - 'PRECISION' => 3, 'PROCEDURE' => 3, 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'IS_UUID' => 33, 'QUARTER' => 33, - 'RADIANS' => 33, 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, - 'SUBDATE' => 33, 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, - 'VAR_POP' => 33, 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'BIN_TO_UUID' => 33, 'CHAR_LENGTH' => 33, - 'DATE_FORMAT' => 33, 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, - 'FROM_BASE64' => 33, 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, - 'JSON_LENGTH' => 33, 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, - 'JSON_SEARCH' => 33, 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, - 'MBROVERLAPS' => 33, 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, - 'SEC_TO_TIME' => 33, 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, - 'ST_CENTROID' => 33, 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, - 'ST_ENDPOINT' => 33, 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, - 'ST_OVERLAPS' => 33, 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, - 'TIME_FORMAT' => 33, 'TIME_TO_SEC' => 33, 'UUID_TO_BIN' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTAINS' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSIST' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PERSIST_ONLY' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_RESET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUPING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_DISABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_ENABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_GET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_GET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_RESET_MEMBER_ACTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_AS_PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SWITCH_TO_MULTI_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SWITCH_TO_SINGLE_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALIDATION_REPORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PS_CURRENT_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PS_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MEMBER OF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMySql80300.php b/src/Contexts/ContextMySql80300.php index b7a2c13f6..9471c0d70 100644 --- a/src/Contexts/ContextMySql80300.php +++ b/src/Contexts/ContextMySql80300.php @@ -22,335 +22,1087 @@ class ContextMySql80300 extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'AT' => 1, 'DO' => 1, 'IO' => 1, 'NO' => 1, 'XA' => 1, - 'ANY' => 1, 'CPU' => 1, 'END' => 1, 'IPC' => 1, 'NDB' => 1, 'NEW' => 1, - 'ONE' => 1, 'ROW' => 1, 'XID' => 1, - 'BYTE' => 1, 'CODE' => 1, 'CUBE' => 1, 'DATA' => 1, 'DISK' => 1, 'ENDS' => 1, - 'FAST' => 1, 'FILE' => 1, 'FULL' => 1, 'HASH' => 1, 'HELP' => 1, 'HOST' => 1, - 'LAST' => 1, 'LESS' => 1, 'LIST' => 1, 'LOGS' => 1, 'MODE' => 1, 'NAME' => 1, - 'NEXT' => 1, 'NONE' => 1, 'ONLY' => 1, 'OPEN' => 1, 'PAGE' => 1, 'PORT' => 1, - 'PREV' => 1, 'ROWS' => 1, 'SLOW' => 1, 'SOME' => 1, 'STOP' => 1, 'THAN' => 1, - 'TYPE' => 1, 'VIEW' => 1, 'WAIT' => 1, 'WORK' => 1, 'X509' => 1, - 'AFTER' => 1, 'BEGIN' => 1, 'BLOCK' => 1, 'BTREE' => 1, 'CACHE' => 1, - 'CHAIN' => 1, 'CLOSE' => 1, 'ERROR' => 1, 'EVENT' => 1, 'EVERY' => 1, - 'FIRST' => 1, 'FLUSH' => 1, 'FOUND' => 1, 'HOSTS' => 1, 'LEVEL' => 1, - 'LOCAL' => 1, 'LOCKS' => 1, 'MERGE' => 1, 'MUTEX' => 1, 'NAMES' => 1, - 'NCHAR' => 1, 'NEVER' => 1, 'OWNER' => 1, 'PHASE' => 1, 'PROXY' => 1, - 'QUERY' => 1, 'QUICK' => 1, 'RELAY' => 1, 'RESET' => 1, 'RTREE' => 1, - 'SHARE' => 1, 'SLAVE' => 1, 'START' => 1, 'SUPER' => 1, 'SWAPS' => 1, - 'TYPES' => 1, 'UNTIL' => 1, 'VALUE' => 1, - 'ACTION' => 1, 'ALWAYS' => 1, 'BACKUP' => 1, 'BINLOG' => 1, 'CIPHER' => 1, - 'CLIENT' => 1, 'COMMIT' => 1, 'ENABLE' => 1, 'ENGINE' => 1, 'ERRORS' => 1, - 'ESCAPE' => 1, 'EVENTS' => 1, 'EXPIRE' => 1, 'EXPORT' => 1, 'FAULTS' => 1, - 'FIELDS' => 1, 'FILTER' => 1, 'GLOBAL' => 1, 'GRANTS' => 1, 'IMPORT' => 1, - 'ISSUER' => 1, 'LEAVES' => 1, 'MASTER' => 1, 'MEDIUM' => 1, 'MEMORY' => 1, - 'MODIFY' => 1, 'NUMBER' => 1, 'OFFSET' => 1, 'PARSER' => 1, 'PLUGIN' => 1, - 'RELOAD' => 1, 'REMOVE' => 1, 'REPAIR' => 1, 'RESUME' => 1, 'ROLLUP' => 1, - 'SERVER' => 1, 'SIGNED' => 1, 'SIMPLE' => 1, 'SOCKET' => 1, 'SONAME' => 1, - 'SOUNDS' => 1, 'SOURCE' => 1, 'STARTS' => 1, 'STATUS' => 1, 'STRING' => 1, - 'TABLES' => 1, - 'ACCOUNT' => 1, 'ANALYSE' => 1, 'CHANGED' => 1, 'CHANNEL' => 1, 'COLUMNS' => 1, - 'COMMENT' => 1, 'COMPACT' => 1, 'CONTEXT' => 1, 'CURRENT' => 1, 'DEFINER' => 1, - 'DISABLE' => 1, 'DISCARD' => 1, 'DYNAMIC' => 1, 'ENGINES' => 1, 'EXECUTE' => 1, - 'FOLLOWS' => 1, 'GENERAL' => 1, 'HANDLER' => 1, 'INDEXES' => 1, 'INSTALL' => 1, - 'INVOKER' => 1, 'LOGFILE' => 1, 'MIGRATE' => 1, 'NO_WAIT' => 1, 'OPTIONS' => 1, - 'PARTIAL' => 1, 'PERSIST' => 1, 'PLUGINS' => 1, 'PREPARE' => 1, 'PROFILE' => 1, - 'REBUILD' => 1, 'RECOVER' => 1, 'RESTORE' => 1, 'RETURNS' => 1, 'ROUTINE' => 1, - 'SESSION' => 1, 'STACKED' => 1, 'STORAGE' => 1, 'SUBJECT' => 1, 'SUSPEND' => 1, - 'UNICODE' => 1, 'UNKNOWN' => 1, 'UPGRADE' => 1, 'USE_FRM' => 1, 'WITHOUT' => 1, - 'WRAPPER' => 1, - 'CASCADED' => 1, 'CHECKSUM' => 1, 'DATAFILE' => 1, 'DUMPFILE' => 1, 'EXCHANGE' => 1, - 'EXTENDED' => 1, 'FUNCTION' => 1, 'LANGUAGE' => 1, 'MAX_ROWS' => 1, 'MAX_SIZE' => 1, - 'MIN_ROWS' => 1, 'NATIONAL' => 1, 'NVARCHAR' => 1, 'PRECEDES' => 1, 'PRESERVE' => 1, - 'PROFILES' => 1, 'REDOFILE' => 1, 'RELAYLOG' => 1, 'ROLLBACK' => 1, 'SCHEDULE' => 1, - 'SECURITY' => 1, 'SHUTDOWN' => 1, 'SNAPSHOT' => 1, 'SWITCHES' => 1, 'TRIGGERS' => 1, - 'UNDOFILE' => 1, 'WARNINGS' => 1, - 'AGGREGATE' => 1, 'ALGORITHM' => 1, 'COMMITTED' => 1, 'DIRECTORY' => 1, - 'DUPLICATE' => 1, 'EXPANSION' => 1, 'INVISIBLE' => 1, 'IO_THREAD' => 1, - 'ISOLATION' => 1, 'NODEGROUP' => 1, 'PACK_KEYS' => 1, 'READ_ONLY' => 1, - 'REDUNDANT' => 1, 'SAVEPOINT' => 1, 'SQL_CACHE' => 1, 'TEMPORARY' => 1, - 'TEMPTABLE' => 1, 'UNDEFINED' => 1, 'UNINSTALL' => 1, 'VARIABLES' => 1, - 'COMPLETION' => 1, 'COMPRESSED' => 1, 'CONCURRENT' => 1, 'CONNECTION' => 1, - 'CONSISTENT' => 1, 'DEALLOCATE' => 1, 'IDENTIFIED' => 1, 'MASTER_SSL' => 1, - 'NDBCLUSTER' => 1, 'PARTITIONS' => 1, 'PERSISTENT' => 1, 'PLUGIN_DIR' => 1, - 'PRIVILEGES' => 1, 'REORGANIZE' => 1, 'REPEATABLE' => 1, 'ROW_FORMAT' => 1, - 'SQL_THREAD' => 1, 'TABLESPACE' => 1, 'TABLE_NAME' => 1, 'VALIDATION' => 1, - 'COLUMN_NAME' => 1, 'COMPRESSION' => 1, 'CURSOR_NAME' => 1, 'DIAGNOSTICS' => 1, - 'EXTENT_SIZE' => 1, 'MASTER_HOST' => 1, 'MASTER_PORT' => 1, 'MASTER_USER' => 1, - 'MYSQL_ERRNO' => 1, 'NONBLOCKING' => 1, 'PROCESSLIST' => 1, 'REPLICATION' => 1, - 'SCHEMA_NAME' => 1, 'SQL_TSI_DAY' => 1, 'TRANSACTION' => 1, 'UNCOMMITTED' => 1, - 'CATALOG_NAME' => 1, 'CLASS_ORIGIN' => 1, 'DEFAULT_AUTH' => 1, 'DES_KEY_FILE' => 1, - 'INITIAL_SIZE' => 1, 'MASTER_DELAY' => 1, 'MESSAGE_TEXT' => 1, 'PARTITIONING' => 1, - 'PERSIST_ONLY' => 1, 'RELAY_THREAD' => 1, 'SERIALIZABLE' => 1, 'SQL_NO_CACHE' => 1, - 'SQL_TSI_HOUR' => 1, 'SQL_TSI_WEEK' => 1, 'SQL_TSI_YEAR' => 1, 'SUBPARTITION' => 1, - 'COLUMN_FORMAT' => 1, 'INSERT_METHOD' => 1, 'MASTER_SSL_CA' => 1, 'RELAY_LOG_POS' => 1, - 'SQL_TSI_MONTH' => 1, 'SUBPARTITIONS' => 1, - 'AUTO_INCREMENT' => 1, 'AVG_ROW_LENGTH' => 1, 'KEY_BLOCK_SIZE' => 1, 'MASTER_LOG_POS' => 1, - 'MASTER_SSL_CRL' => 1, 'MASTER_SSL_KEY' => 1, 'RELAY_LOG_FILE' => 1, 'SQL_TSI_MINUTE' => 1, - 'SQL_TSI_SECOND' => 1, 'TABLE_CHECKSUM' => 1, 'USER_RESOURCES' => 1, - 'AUTOEXTEND_SIZE' => 1, 'CONSTRAINT_NAME' => 1, 'DELAY_KEY_WRITE' => 1, 'FILE_BLOCK_SIZE' => 1, - 'MASTER_LOG_FILE' => 1, 'MASTER_PASSWORD' => 1, 'MASTER_SSL_CERT' => 1, 'PARSE_GCOL_EXPR' => 1, - 'REPLICATE_DO_DB' => 1, 'SQL_AFTER_GTIDS' => 1, 'SQL_TSI_QUARTER' => 1, 'SUBCLASS_ORIGIN' => 1, - 'MASTER_SERVER_ID' => 1, 'REDO_BUFFER_SIZE' => 1, 'SQL_BEFORE_GTIDS' => 1, - 'STATS_PERSISTENT' => 1, 'UNDO_BUFFER_SIZE' => 1, - 'CONSTRAINT_SCHEMA' => 1, 'GROUP_REPLICATION' => 1, 'IGNORE_SERVER_IDS' => 1, - 'MASTER_SSL_CAPATH' => 1, 'MASTER_SSL_CIPHER' => 1, 'RETURNED_SQLSTATE' => 1, - 'SQL_BUFFER_RESULT' => 1, 'STATS_AUTO_RECALC' => 1, - 'CONSTRAINT_CATALOG' => 1, 'MASTER_RETRY_COUNT' => 1, 'MASTER_SSL_CRLPATH' => 1, - 'MAX_STATEMENT_TIME' => 1, 'REPLICATE_DO_TABLE' => 1, 'SQL_AFTER_MTS_GAPS' => 1, - 'STATS_SAMPLE_PAGES' => 1, - 'REPLICATE_IGNORE_DB' => 1, - 'MASTER_AUTO_POSITION' => 1, 'MASTER_CONNECT_RETRY' => 1, 'MAX_QUERIES_PER_HOUR' => 1, - 'MAX_UPDATES_PER_HOUR' => 1, 'MAX_USER_CONNECTIONS' => 1, 'REPLICATE_REWRITE_DB' => 1, - 'REPLICATE_IGNORE_TABLE' => 1, - 'MASTER_HEARTBEAT_PERIOD' => 1, 'REPLICATE_WILD_DO_TABLE' => 1, - 'MAX_CONNECTIONS_PER_HOUR' => 1, - 'REPLICATE_WILD_IGNORE_TABLE' => 1, - - 'AS' => 3, 'BY' => 3, 'IS' => 3, 'ON' => 3, 'OR' => 3, 'TO' => 3, - 'ADD' => 3, 'ALL' => 3, 'AND' => 3, 'ASC' => 3, 'DEC' => 3, 'DIV' => 3, - 'FOR' => 3, 'GET' => 3, 'NOT' => 3, 'OUT' => 3, 'SQL' => 3, 'SSL' => 3, - 'USE' => 3, 'XOR' => 3, - 'BOTH' => 3, 'CALL' => 3, 'CASE' => 3, 'DESC' => 3, 'DROP' => 3, 'DUAL' => 3, - 'EACH' => 3, 'ELSE' => 3, 'EXIT' => 3, 'FROM' => 3, 'INTO' => 3, 'JOIN' => 3, - 'KEYS' => 3, 'KILL' => 3, 'LIKE' => 3, 'LOAD' => 3, 'LOCK' => 3, 'LOOP' => 3, - 'NULL' => 3, 'OVER' => 3, 'READ' => 3, 'SHOW' => 3, 'THEN' => 3, 'TRUE' => 3, - 'UNDO' => 3, 'WHEN' => 3, 'WITH' => 3, - 'ALTER' => 3, 'CHECK' => 3, 'CROSS' => 3, 'FALSE' => 3, 'FETCH' => 3, - 'FORCE' => 3, 'GRANT' => 3, 'GROUP' => 3, 'INNER' => 3, 'INOUT' => 3, - 'LEAVE' => 3, 'LIMIT' => 3, 'LINES' => 3, 'ORDER' => 3, 'OUTER' => 3, - 'PURGE' => 3, 'RANGE' => 3, 'READS' => 3, 'RLIKE' => 3, 'TABLE' => 3, - 'UNION' => 3, 'USAGE' => 3, 'USING' => 3, 'WHERE' => 3, 'WHILE' => 3, - 'WRITE' => 3, - 'BEFORE' => 3, 'CHANGE' => 3, 'COLUMN' => 3, 'CREATE' => 3, 'CURSOR' => 3, - 'DELETE' => 3, 'ELSEIF' => 3, 'HAVING' => 3, 'IGNORE' => 3, 'INFILE' => 3, - 'LINEAR' => 3, 'OPTION' => 3, 'REGEXP' => 3, 'RENAME' => 3, 'RETURN' => 3, - 'REVOKE' => 3, 'SELECT' => 3, 'SIGNAL' => 3, 'STORED' => 3, 'UNLOCK' => 3, - 'UPDATE' => 3, - 'ANALYZE' => 3, 'BETWEEN' => 3, 'CASCADE' => 3, 'COLLATE' => 3, 'DECLARE' => 3, - 'DELAYED' => 3, 'ESCAPED' => 3, 'EXPLAIN' => 3, 'FOREIGN' => 3, 'ITERATE' => 3, - 'LEADING' => 3, 'NATURAL' => 3, 'OUTFILE' => 3, 'PRIMARY' => 3, 'RELEASE' => 3, - 'REQUIRE' => 3, 'SCHEMAS' => 3, 'TRIGGER' => 3, 'VARYING' => 3, 'VIRTUAL' => 3, - 'CONTINUE' => 3, 'DAY_HOUR' => 3, 'DESCRIBE' => 3, 'DISTINCT' => 3, 'ENCLOSED' => 3, - 'MAXVALUE' => 3, 'MODIFIES' => 3, 'OPTIMIZE' => 3, 'RESIGNAL' => 3, 'RESTRICT' => 3, - 'SPECIFIC' => 3, 'SQLSTATE' => 3, 'STARTING' => 3, 'TRAILING' => 3, 'UNSIGNED' => 3, - 'ZEROFILL' => 3, - 'CONDITION' => 3, 'DATABASES' => 3, 'GENERATED' => 3, 'PARTITION' => 3, - 'PRECISION' => 3, 'PROCEDURE' => 3, 'SENSITIVE' => 3, 'SEPARATOR' => 3, - 'ACCESSIBLE' => 3, 'ASENSITIVE' => 3, 'CONSTRAINT' => 3, 'DAY_MINUTE' => 3, - 'DAY_SECOND' => 3, 'OPTIONALLY' => 3, 'READ_WRITE' => 3, 'REFERENCES' => 3, - 'SQLWARNING' => 3, 'TERMINATED' => 3, 'YEAR_MONTH' => 3, - 'DISTINCTROW' => 3, 'HOUR_MINUTE' => 3, 'HOUR_SECOND' => 3, 'INSENSITIVE' => 3, - 'MASTER_BIND' => 3, - 'LOW_PRIORITY' => 3, 'SQLEXCEPTION' => 3, 'VARCHARACTER' => 3, - 'DETERMINISTIC' => 3, 'HIGH_PRIORITY' => 3, 'MINUTE_SECOND' => 3, 'STRAIGHT_JOIN' => 3, - 'IO_AFTER_GTIDS' => 3, 'SQL_BIG_RESULT' => 3, - 'DAY_MICROSECOND' => 3, 'IO_BEFORE_GTIDS' => 3, 'OPTIMIZER_COSTS' => 3, - 'HOUR_MICROSECOND' => 3, 'SQL_SMALL_RESULT' => 3, - 'MINUTE_MICROSECOND' => 3, 'NO_WRITE_TO_BINLOG' => 3, 'SECOND_MICROSECOND' => 3, - 'SQL_CALC_FOUND_ROWS' => 3, - 'MASTER_SSL_VERIFY_SERVER_CERT' => 3, - - 'NO SQL' => 7, - 'GROUP BY' => 7, 'NOT NULL' => 7, 'ORDER BY' => 7, 'SET NULL' => 7, - 'AND CHAIN' => 7, 'FULL JOIN' => 7, 'IF EXISTS' => 7, 'LEFT JOIN' => 7, - 'LESS THAN' => 7, 'LOAD DATA' => 7, 'NO ACTION' => 7, 'ON DELETE' => 7, - 'ON UPDATE' => 7, 'UNION ALL' => 7, - 'CROSS JOIN' => 7, 'ESCAPED BY' => 7, 'FOR UPDATE' => 7, 'INNER JOIN' => 7, - 'LINEAR KEY' => 7, 'NO RELEASE' => 7, 'OR REPLACE' => 7, 'RIGHT JOIN' => 7, - 'ENCLOSED BY' => 7, 'LINEAR HASH' => 7, 'ON SCHEDULE' => 7, 'STARTING BY' => 7, - 'WITH ROLLUP' => 7, - 'AND NO CHAIN' => 7, 'CONTAINS SQL' => 7, 'FOR EACH ROW' => 7, 'NATURAL JOIN' => 7, - 'PARTITION BY' => 7, 'SET PASSWORD' => 7, 'SQL SECURITY' => 7, - 'CHARACTER SET' => 7, 'IF NOT EXISTS' => 7, 'TERMINATED BY' => 7, - 'DATA DIRECTORY' => 7, 'READS SQL DATA' => 7, 'UNION DISTINCT' => 7, - 'DEFAULT CHARSET' => 7, 'DEFAULT COLLATE' => 7, 'FULL OUTER JOIN' => 7, 'INDEX DIRECTORY' => 7, - 'LEFT OUTER JOIN' => 7, 'SUBPARTITION BY' => 7, - 'DISABLE ON SLAVE' => 7, 'GENERATED ALWAYS' => 7, 'RIGHT OUTER JOIN' => 7, - 'MODIFIES SQL DATA' => 7, 'NATURAL LEFT JOIN' => 7, 'START TRANSACTION' => 7, - 'COALESCE PARTITION' => 7, 'LOCK IN SHARE MODE' => 7, 'NATURAL RIGHT JOIN' => 7, - 'SELECT TRANSACTION' => 7, - 'DEFAULT CHARACTER SET' => 7, - 'ON COMPLETION PRESERVE' => 7, - 'NATURAL LEFT OUTER JOIN' => 7, - 'NATURAL RIGHT OUTER JOIN' => 7, 'WITH CONSISTENT SNAPSHOT' => 7, - 'ON COMPLETION NOT PRESERVE' => 7, - - 'BIT' => 9, 'XML' => 9, - 'BOOL' => 9, 'ENUM' => 9, 'JSON' => 9, 'TEXT' => 9, - 'ARRAY' => 9, 'FIXED' => 9, - 'SERIAL' => 9, - 'BOOLEAN' => 9, - 'DATETIME' => 9, 'GEOMETRY' => 9, 'MULTISET' => 9, - 'MULTILINEPOINT' => 9, - 'MULTILINEPOLYGON' => 9, - - 'INT' => 11, 'SET' => 11, - 'BLOB' => 11, 'INT1' => 11, 'INT2' => 11, 'INT3' => 11, 'INT4' => 11, 'INT8' => 11, - 'LONG' => 11, 'REAL' => 11, - 'FLOAT' => 11, - 'BIGINT' => 11, 'DOUBLE' => 11, 'FLOAT4' => 11, 'FLOAT8' => 11, - 'DECIMAL' => 11, 'INTEGER' => 11, 'NUMERIC' => 11, 'TINYINT' => 11, 'VARCHAR' => 11, - 'LONGBLOB' => 11, 'LONGTEXT' => 11, 'SMALLINT' => 11, 'TINYBLOB' => 11, 'TINYTEXT' => 11, - 'CHARACTER' => 11, 'MEDIUMINT' => 11, 'MIDDLEINT' => 11, 'VARBINARY' => 11, - 'MEDIUMBLOB' => 11, 'MEDIUMTEXT' => 11, - - 'LONG VARCHAR' => 15, - 'BINARY VARYING' => 15, 'LONG VARBINARY' => 15, - 'CHARACTER VARYING' => 15, - - 'KEY' => 19, - 'INDEX' => 19, - 'UNIQUE' => 19, - 'SPATIAL' => 19, - 'FULLTEXT' => 19, - - 'INDEX KEY' => 23, - 'UNIQUE KEY' => 23, - 'FOREIGN KEY' => 23, 'PRIMARY KEY' => 23, 'SPATIAL KEY' => 23, - 'FULLTEXT KEY' => 23, 'UNIQUE INDEX' => 23, - 'SPATIAL INDEX' => 23, - 'FULLTEXT INDEX' => 23, - 'IDENTIFIED WITH' => 23, - - 'X' => 33, 'Y' => 33, - 'LN' => 33, 'PI' => 33, - 'ABS' => 33, 'AVG' => 33, 'BIN' => 33, 'COS' => 33, 'COT' => 33, 'DAY' => 33, - 'ELT' => 33, 'EXP' => 33, 'HEX' => 33, 'LOG' => 33, 'MAX' => 33, 'MD5' => 33, - 'MID' => 33, 'MIN' => 33, 'NOW' => 33, 'OCT' => 33, 'ORD' => 33, 'POW' => 33, - 'SHA' => 33, 'SIN' => 33, 'STD' => 33, 'SUM' => 33, 'TAN' => 33, - 'ACOS' => 33, 'AREA' => 33, 'ASIN' => 33, 'ATAN' => 33, 'CAST' => 33, 'CEIL' => 33, - 'CONV' => 33, 'HOUR' => 33, 'LOG2' => 33, 'LPAD' => 33, 'RAND' => 33, 'RPAD' => 33, - 'SHA1' => 33, 'SHA2' => 33, 'SIGN' => 33, 'SQRT' => 33, 'SRID' => 33, 'ST_X' => 33, - 'ST_Y' => 33, 'TRIM' => 33, 'USER' => 33, 'UUID' => 33, 'WEEK' => 33, - 'ASCII' => 33, 'ASWKB' => 33, 'ASWKT' => 33, 'ATAN2' => 33, 'COUNT' => 33, - 'CRC32' => 33, 'FIELD' => 33, 'FLOOR' => 33, 'INSTR' => 33, 'LCASE' => 33, - 'LEAST' => 33, 'LOG10' => 33, 'LOWER' => 33, 'LTRIM' => 33, 'MONTH' => 33, - 'POWER' => 33, 'QUOTE' => 33, 'ROUND' => 33, 'RTRIM' => 33, 'SLEEP' => 33, - 'SPACE' => 33, 'UCASE' => 33, 'UNHEX' => 33, 'UPPER' => 33, - 'ASTEXT' => 33, 'BIT_OR' => 33, 'BUFFER' => 33, 'CONCAT' => 33, 'DECODE' => 33, - 'ENCODE' => 33, 'EQUALS' => 33, 'FORMAT' => 33, 'IFNULL' => 33, 'ISNULL' => 33, - 'LENGTH' => 33, 'LOCATE' => 33, 'MINUTE' => 33, 'NULLIF' => 33, 'POINTN' => 33, - 'SECOND' => 33, 'STDDEV' => 33, 'STRCMP' => 33, 'SUBSTR' => 33, 'WITHIN' => 33, - 'ADDDATE' => 33, 'ADDTIME' => 33, 'AGAINST' => 33, 'BIT_AND' => 33, 'BIT_XOR' => 33, - 'CEILING' => 33, 'CHARSET' => 33, 'CROSSES' => 33, 'CURDATE' => 33, 'CURTIME' => 33, - 'DAYNAME' => 33, 'DEGREES' => 33, 'ENCRYPT' => 33, 'EXTRACT' => 33, 'GLENGTH' => 33, - 'ISEMPTY' => 33, 'IS_IPV4' => 33, 'IS_IPV6' => 33, 'IS_UUID' => 33, 'QUARTER' => 33, - 'RADIANS' => 33, 'REVERSE' => 33, 'SOUNDEX' => 33, 'ST_AREA' => 33, 'ST_SRID' => 33, - 'SUBDATE' => 33, 'SUBTIME' => 33, 'SYSDATE' => 33, 'TOUCHES' => 33, 'TO_DAYS' => 33, - 'VAR_POP' => 33, 'VERSION' => 33, 'WEEKDAY' => 33, - 'ASBINARY' => 33, 'CENTROID' => 33, 'COALESCE' => 33, 'COMPRESS' => 33, 'CONTAINS' => 33, - 'DATEDIFF' => 33, 'DATE_ADD' => 33, 'DATE_SUB' => 33, 'DISJOINT' => 33, 'DISTANCE' => 33, - 'ENDPOINT' => 33, 'ENVELOPE' => 33, 'GET_LOCK' => 33, 'GREATEST' => 33, 'ISCLOSED' => 33, - 'ISSIMPLE' => 33, 'JSON_SET' => 33, 'MAKEDATE' => 33, 'MAKETIME' => 33, 'MAKE_SET' => 33, - 'MBREQUAL' => 33, 'OVERLAPS' => 33, 'PASSWORD' => 33, 'POSITION' => 33, 'ST_ASWKB' => 33, - 'ST_ASWKT' => 33, 'ST_UNION' => 33, 'TIMEDIFF' => 33, 'TRUNCATE' => 33, 'VARIANCE' => 33, - 'VAR_SAMP' => 33, 'YEARWEEK' => 33, - 'ANY_VALUE' => 33, 'BENCHMARK' => 33, 'BIT_COUNT' => 33, 'COLLATION' => 33, - 'CONCAT_WS' => 33, 'DAYOFWEEK' => 33, 'DAYOFYEAR' => 33, 'DIMENSION' => 33, - 'FROM_DAYS' => 33, 'GEOMETRYN' => 33, 'INET_ATON' => 33, 'INET_NTOA' => 33, - 'JSON_KEYS' => 33, 'JSON_TYPE' => 33, 'LOAD_FILE' => 33, 'MBRCOVERS' => 33, - 'MBREQUALS' => 33, 'MBRWITHIN' => 33, 'MONTHNAME' => 33, 'NUMPOINTS' => 33, - 'ROW_COUNT' => 33, 'ST_ASTEXT' => 33, 'ST_BUFFER' => 33, 'ST_EQUALS' => 33, - 'ST_LENGTH' => 33, 'ST_POINTN' => 33, 'ST_WITHIN' => 33, 'SUBSTRING' => 33, - 'TO_BASE64' => 33, 'UPDATEXML' => 33, - 'BIT_LENGTH' => 33, 'CONVERT_TZ' => 33, 'CONVEXHULL' => 33, 'DAYOFMONTH' => 33, - 'EXPORT_SET' => 33, 'FOUND_ROWS' => 33, 'GET_FORMAT' => 33, 'INET6_ATON' => 33, - 'INET6_NTOA' => 33, 'INTERSECTS' => 33, 'JSON_ARRAY' => 33, 'JSON_DEPTH' => 33, - 'JSON_MERGE' => 33, 'JSON_QUOTE' => 33, 'JSON_VALID' => 33, 'MBRTOUCHES' => 33, - 'NAME_CONST' => 33, 'PERIOD_ADD' => 33, 'STARTPOINT' => 33, 'STDDEV_POP' => 33, - 'ST_CROSSES' => 33, 'ST_GEOHASH' => 33, 'ST_ISEMPTY' => 33, 'ST_ISVALID' => 33, - 'ST_TOUCHES' => 33, 'TO_SECONDS' => 33, 'UNCOMPRESS' => 33, 'UUID_SHORT' => 33, - 'WEEKOFYEAR' => 33, - 'AES_DECRYPT' => 33, 'AES_ENCRYPT' => 33, 'BIN_TO_UUID' => 33, 'CHAR_LENGTH' => 33, - 'DATE_FORMAT' => 33, 'DES_DECRYPT' => 33, 'DES_ENCRYPT' => 33, 'FIND_IN_SET' => 33, - 'FROM_BASE64' => 33, 'GEOMFROMWKB' => 33, 'GTID_SUBSET' => 33, 'JSON_INSERT' => 33, - 'JSON_LENGTH' => 33, 'JSON_OBJECT' => 33, 'JSON_PRETTY' => 33, 'JSON_REMOVE' => 33, - 'JSON_SEARCH' => 33, 'LINEFROMWKB' => 33, 'MBRCONTAINS' => 33, 'MBRDISJOINT' => 33, - 'MBROVERLAPS' => 33, 'MICROSECOND' => 33, 'PERIOD_DIFF' => 33, 'POLYFROMWKB' => 33, - 'SEC_TO_TIME' => 33, 'STDDEV_SAMP' => 33, 'STR_TO_DATE' => 33, 'ST_ASBINARY' => 33, - 'ST_CENTROID' => 33, 'ST_CONTAINS' => 33, 'ST_DISJOINT' => 33, 'ST_DISTANCE' => 33, - 'ST_ENDPOINT' => 33, 'ST_ENVELOPE' => 33, 'ST_ISCLOSED' => 33, 'ST_ISSIMPLE' => 33, - 'ST_OVERLAPS' => 33, 'ST_SIMPLIFY' => 33, 'ST_VALIDATE' => 33, 'SYSTEM_USER' => 33, - 'TIME_FORMAT' => 33, 'TIME_TO_SEC' => 33, 'UUID_TO_BIN' => 33, - 'COERCIBILITY' => 33, 'EXTERIORRING' => 33, 'EXTRACTVALUE' => 33, 'GEOMETRYTYPE' => 33, - 'GEOMFROMTEXT' => 33, 'GROUP_CONCAT' => 33, 'IS_FREE_LOCK' => 33, 'IS_USED_LOCK' => 33, - 'JSON_EXTRACT' => 33, 'JSON_REPLACE' => 33, 'JSON_UNQUOTE' => 33, 'LINEFROMTEXT' => 33, - 'MBRCOVEREDBY' => 33, 'MLINEFROMWKB' => 33, 'MPOLYFROMWKB' => 33, 'OCTET_LENGTH' => 33, - 'OLD_PASSWORD' => 33, 'POINTFROMWKB' => 33, 'POLYFROMTEXT' => 33, 'RANDOM_BYTES' => 33, - 'RELEASE_LOCK' => 33, 'SESSION_USER' => 33, 'ST_ASGEOJSON' => 33, 'ST_DIMENSION' => 33, - 'ST_GEOMETRYN' => 33, 'ST_NUMPOINTS' => 33, 'TIMESTAMPADD' => 33, - 'CONNECTION_ID' => 33, 'FROM_UNIXTIME' => 33, 'GTID_SUBTRACT' => 33, 'INTERIORRINGN' => 33, - 'JSON_CONTAINS' => 33, 'MBRINTERSECTS' => 33, 'MLINEFROMTEXT' => 33, 'MPOINTFROMWKB' => 33, - 'MPOLYFROMTEXT' => 33, 'NUMGEOMETRIES' => 33, 'POINTFROMTEXT' => 33, 'ST_CONVEXHULL' => 33, - 'ST_DIFFERENCE' => 33, 'ST_INTERSECTS' => 33, 'ST_STARTPOINT' => 33, 'TIMESTAMPDIFF' => 33, - 'WEIGHT_STRING' => 33, - 'IS_IPV4_COMPAT' => 33, 'IS_IPV4_MAPPED' => 33, 'LAST_INSERT_ID' => 33, 'MPOINTFROMTEXT' => 33, - 'POLYGONFROMWKB' => 33, 'ST_GEOMFROMWKB' => 33, 'ST_LINEFROMWKB' => 33, 'ST_POLYFROMWKB' => 33, - 'UNIX_TIMESTAMP' => 33, - 'GEOMCOLLFROMWKB' => 33, 'MASTER_POS_WAIT' => 33, 'POLYGONFROMTEXT' => 33, 'ST_EXTERIORRING' => 33, - 'ST_GEOMETRYTYPE' => 33, 'ST_GEOMFROMTEXT' => 33, 'ST_INTERSECTION' => 33, 'ST_LINEFROMTEXT' => 33, - 'ST_MAKEENVELOPE' => 33, 'ST_MLINEFROMWKB' => 33, 'ST_MPOLYFROMWKB' => 33, 'ST_POINTFROMWKB' => 33, - 'ST_POLYFROMTEXT' => 33, 'SUBSTRING_INDEX' => 33, - 'CHARACTER_LENGTH' => 33, 'GEOMCOLLFROMTEXT' => 33, 'GEOMETRYFROMTEXT' => 33, - 'JSON_MERGE_PATCH' => 33, 'NUMINTERIORRINGS' => 33, 'ST_INTERIORRINGN' => 33, - 'ST_MLINEFROMTEXT' => 33, 'ST_MPOINTFROMWKB' => 33, 'ST_MPOLYFROMTEXT' => 33, - 'ST_NUMGEOMETRIES' => 33, 'ST_POINTFROMTEXT' => 33, 'ST_SYMDIFFERENCE' => 33, - 'JSON_ARRAY_APPEND' => 33, 'JSON_ARRAY_INSERT' => 33, 'JSON_STORAGE_FREE' => 33, - 'JSON_STORAGE_SIZE' => 33, 'LINESTRINGFROMWKB' => 33, 'MULTIPOINTFROMWKB' => 33, - 'RELEASE_ALL_LOCKS' => 33, 'ST_LATFROMGEOHASH' => 33, 'ST_MPOINTFROMTEXT' => 33, - 'ST_POLYGONFROMWKB' => 33, - 'JSON_CONTAINS_PATH' => 33, 'MULTIPOINTFROMTEXT' => 33, 'ST_BUFFER_STRATEGY' => 33, - 'ST_DISTANCE_SPHERE' => 33, 'ST_GEOMCOLLFROMTXT' => 33, 'ST_GEOMCOLLFROMWKB' => 33, - 'ST_GEOMFROMGEOJSON' => 33, 'ST_LONGFROMGEOHASH' => 33, 'ST_POLYGONFROMTEXT' => 33, - 'JSON_MERGE_PRESERVE' => 33, 'MULTIPOLYGONFROMWKB' => 33, 'ST_GEOMCOLLFROMTEXT' => 33, - 'ST_GEOMETRYFROMTEXT' => 33, 'ST_NUMINTERIORRINGS' => 33, 'ST_POINTFROMGEOHASH' => 33, - 'UNCOMPRESSED_LENGTH' => 33, - 'MULTIPOLYGONFROMTEXT' => 33, 'ST_LINESTRINGFROMWKB' => 33, 'ST_MULTIPOINTFROMWKB' => 33, - 'ST_MULTIPOINTFROMTEXT' => 33, - 'MULTILINESTRINGFROMWKB' => 33, 'ST_MULTIPOLYGONFROMWKB' => 33, - 'MULTILINESTRINGFROMTEXT' => 33, 'ST_MULTIPOLYGONFROMTEXT' => 33, - 'GEOMETRYCOLLECTIONFROMWKB' => 33, 'ST_MULTILINESTRINGFROMWKB' => 33, - 'GEOMETRYCOLLECTIONFROMTEXT' => 33, 'ST_MULTILINESTRINGFROMTEXT' => 33, 'VALIDATE_PASSWORD_STRENGTH' => 33, - 'WAIT_FOR_EXECUTED_GTID_SET' => 33, - 'ST_GEOMETRYCOLLECTIONFROMWKB' => 33, - 'ST_GEOMETRYCOLLECTIONFROMTEXT' => 33, - 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => 33, - - 'IF' => 35, 'IN' => 35, - 'MOD' => 35, - 'LEFT' => 35, - 'MATCH' => 35, 'RIGHT' => 35, - 'EXISTS' => 35, 'INSERT' => 35, 'REPEAT' => 35, 'SCHEMA' => 35, 'VALUES' => 35, - 'CONVERT' => 35, 'DEFAULT' => 35, 'REPLACE' => 35, - 'DATABASE' => 35, 'UTC_DATE' => 35, 'UTC_TIME' => 35, - 'LOCALTIME' => 35, - 'CURRENT_DATE' => 35, 'CURRENT_TIME' => 35, 'CURRENT_USER' => 35, - 'UTC_TIMESTAMP' => 35, - 'LOCALTIMESTAMP' => 35, - 'CURRENT_TIMESTAMP' => 35, - - 'NOT IN' => 39, - - 'DATE' => 41, 'TIME' => 41, 'YEAR' => 41, - 'POINT' => 41, - 'POLYGON' => 41, - 'TIMESTAMP' => 41, - 'LINESTRING' => 41, 'MULTIPOINT' => 41, - 'MULTIPOLYGON' => 41, - 'MULTILINESTRING' => 41, - 'GEOMETRYCOLLECTION' => 41, - - 'CHAR' => 43, - 'BINARY' => 43, - 'INTERVAL' => 43, + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTAINS' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_AUTO_POSITION' => Token::FLAG_KEYWORD, + 'MASTER_CONNECT_RETRY' => Token::FLAG_KEYWORD, + 'MASTER_DELAY' => Token::FLAG_KEYWORD, + 'MASTER_HEARTBEAT_PERIOD' => Token::FLAG_KEYWORD, + 'MASTER_HOST' => Token::FLAG_KEYWORD, + 'MASTER_LOG_FILE' => Token::FLAG_KEYWORD, + 'MASTER_LOG_POS' => Token::FLAG_KEYWORD, + 'MASTER_PASSWORD' => Token::FLAG_KEYWORD, + 'MASTER_PORT' => Token::FLAG_KEYWORD, + 'MASTER_RETRY_COUNT' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MASTER_SSL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CA' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CAPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CERT' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CIPHER' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRL' => Token::FLAG_KEYWORD, + 'MASTER_SSL_CRLPATH' => Token::FLAG_KEYWORD, + 'MASTER_SSL_KEY' => Token::FLAG_KEYWORD, + 'MASTER_USER' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSIST' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PERSIST_ONLY' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_BIND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MASTER_SSL_VERIFY_SERVER_CERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_RESET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUPING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_DISABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_ENABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_GET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_GET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_RESET_MEMBER_ACTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_AS_PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SWITCH_TO_MULTI_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SWITCH_TO_SINGLE_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALIDATION_REPORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PS_CURRENT_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PS_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MEMBER OF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/src/Contexts/ContextMySql80400.php b/src/Contexts/ContextMySql80400.php new file mode 100644 index 000000000..707deea48 --- /dev/null +++ b/src/Contexts/ContextMySql80400.php @@ -0,0 +1,1096 @@ + + * @phpstan-var non-empty-array + */ + public static $KEYWORDS = [ + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTO' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BERNOULLI' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTAINS' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'GTIDS' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARSE_TREE' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PASSWORD' => Token::FLAG_KEYWORD, + 'PERSIST' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PERSIST_ONLY' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'S3' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MANUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARALLEL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'QUALIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLESAMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_ADD_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_MANAGED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_DELETE_SOURCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASYNCHRONOUS_CONNECTION_FAILOVER_RESET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAN_ACCESS_VIEW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CUME_DIST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DENSE_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIRST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT_PICO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_COLUMN_PRIVILEGES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_CREATE_OPTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_DD_INDEX_SUB_PART_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUPING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_DISABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_ENABLE_MEMBER_ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_GET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_GET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_RESET_MEMBER_ACTIONS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_AS_PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_COMMUNICATION_PROTOCOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SET_WRITE_CONCURRENCY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SWITCH_TO_MULTI_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_REPLICATION_SWITCH_TO_SINGLE_PRIMARY_MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ICU_VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AUTO_INCREMENT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_AVG_ROW_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECKSUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_CHECK_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_DD_CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_COMMENT_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_ENABLED_ROLE_JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_HOSTNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_USERNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_GET_VIEW_WARNING_OR_ERROR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_COLUMN_CARDINALITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_INDEX_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_ENABLED_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_IS_MANDATORY_ROLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_KEYS_DISABLED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_MAX_DATA_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_TABLE_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERNAL_UPDATE_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAYAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECTAGG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SCHEMA_VALIDATION_REPORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTH_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NTILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERCENT_RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PS_CURRENT_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PS_THREAD_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REGEXP_SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROLES_GRAPHML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_NUMBER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOURCE_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STATEMENT_DIGEST_TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_COLLECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_FRECHETDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_HAUSDORFFDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEINTERPOLATEPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGITUDE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTATDISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SWAPXY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TRANSFORM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MEMBER OF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + ]; +} diff --git a/src/Contexts/ContextMySql90000.php b/src/Contexts/ContextMySql90000.php new file mode 100644 index 000000000..7b4ba9721 --- /dev/null +++ b/src/Contexts/ContextMySql90000.php @@ -0,0 +1,1090 @@ + + * @phpstan-var non-empty-array + */ + public static $KEYWORDS = [ + 'ACCOUNT' => Token::FLAG_KEYWORD, + 'ACTION' => Token::FLAG_KEYWORD, + 'AFTER' => Token::FLAG_KEYWORD, + 'AGGREGATE' => Token::FLAG_KEYWORD, + 'ALGORITHM' => Token::FLAG_KEYWORD, + 'ALWAYS' => Token::FLAG_KEYWORD, + 'ANALYSE' => Token::FLAG_KEYWORD, + 'ANY' => Token::FLAG_KEYWORD, + 'AT' => Token::FLAG_KEYWORD, + 'AUTO' => Token::FLAG_KEYWORD, + 'AUTOEXTEND_SIZE' => Token::FLAG_KEYWORD, + 'AUTO_INCREMENT' => Token::FLAG_KEYWORD, + 'AVG_ROW_LENGTH' => Token::FLAG_KEYWORD, + 'BACKUP' => Token::FLAG_KEYWORD, + 'BEGIN' => Token::FLAG_KEYWORD, + 'BERNOULLI' => Token::FLAG_KEYWORD, + 'BINLOG' => Token::FLAG_KEYWORD, + 'BLOCK' => Token::FLAG_KEYWORD, + 'BTREE' => Token::FLAG_KEYWORD, + 'BYTE' => Token::FLAG_KEYWORD, + 'CACHE' => Token::FLAG_KEYWORD, + 'CASCADED' => Token::FLAG_KEYWORD, + 'CATALOG_NAME' => Token::FLAG_KEYWORD, + 'CHAIN' => Token::FLAG_KEYWORD, + 'CHANGED' => Token::FLAG_KEYWORD, + 'CHANNEL' => Token::FLAG_KEYWORD, + 'CHECKSUM' => Token::FLAG_KEYWORD, + 'CIPHER' => Token::FLAG_KEYWORD, + 'CLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'CLIENT' => Token::FLAG_KEYWORD, + 'CLOSE' => Token::FLAG_KEYWORD, + 'CODE' => Token::FLAG_KEYWORD, + 'COLUMNS' => Token::FLAG_KEYWORD, + 'COLUMN_FORMAT' => Token::FLAG_KEYWORD, + 'COLUMN_NAME' => Token::FLAG_KEYWORD, + 'COMMENT' => Token::FLAG_KEYWORD, + 'COMMIT' => Token::FLAG_KEYWORD, + 'COMMITTED' => Token::FLAG_KEYWORD, + 'COMPACT' => Token::FLAG_KEYWORD, + 'COMPLETION' => Token::FLAG_KEYWORD, + 'COMPRESSED' => Token::FLAG_KEYWORD, + 'COMPRESSION' => Token::FLAG_KEYWORD, + 'CONCURRENT' => Token::FLAG_KEYWORD, + 'CONNECTION' => Token::FLAG_KEYWORD, + 'CONSISTENT' => Token::FLAG_KEYWORD, + 'CONSTRAINT_CATALOG' => Token::FLAG_KEYWORD, + 'CONSTRAINT_NAME' => Token::FLAG_KEYWORD, + 'CONSTRAINT_SCHEMA' => Token::FLAG_KEYWORD, + 'CONTEXT' => Token::FLAG_KEYWORD, + 'CPU' => Token::FLAG_KEYWORD, + 'CUBE' => Token::FLAG_KEYWORD, + 'CURRENT' => Token::FLAG_KEYWORD, + 'CURSOR_NAME' => Token::FLAG_KEYWORD, + 'DATA' => Token::FLAG_KEYWORD, + 'DATAFILE' => Token::FLAG_KEYWORD, + 'DEALLOCATE' => Token::FLAG_KEYWORD, + 'DEFAULT_AUTH' => Token::FLAG_KEYWORD, + 'DEFINER' => Token::FLAG_KEYWORD, + 'DELAY_KEY_WRITE' => Token::FLAG_KEYWORD, + 'DES_KEY_FILE' => Token::FLAG_KEYWORD, + 'DIAGNOSTICS' => Token::FLAG_KEYWORD, + 'DIRECTORY' => Token::FLAG_KEYWORD, + 'DISABLE' => Token::FLAG_KEYWORD, + 'DISCARD' => Token::FLAG_KEYWORD, + 'DISK' => Token::FLAG_KEYWORD, + 'DO' => Token::FLAG_KEYWORD, + 'DUMPFILE' => Token::FLAG_KEYWORD, + 'DUPLICATE' => Token::FLAG_KEYWORD, + 'DYNAMIC' => Token::FLAG_KEYWORD, + 'ENABLE' => Token::FLAG_KEYWORD, + 'END' => Token::FLAG_KEYWORD, + 'ENDS' => Token::FLAG_KEYWORD, + 'ENGINE' => Token::FLAG_KEYWORD, + 'ENGINES' => Token::FLAG_KEYWORD, + 'ERROR' => Token::FLAG_KEYWORD, + 'ERRORS' => Token::FLAG_KEYWORD, + 'ESCAPE' => Token::FLAG_KEYWORD, + 'EVENT' => Token::FLAG_KEYWORD, + 'EVENTS' => Token::FLAG_KEYWORD, + 'EVERY' => Token::FLAG_KEYWORD, + 'EXCHANGE' => Token::FLAG_KEYWORD, + 'EXECUTE' => Token::FLAG_KEYWORD, + 'EXPANSION' => Token::FLAG_KEYWORD, + 'EXPIRE' => Token::FLAG_KEYWORD, + 'EXPORT' => Token::FLAG_KEYWORD, + 'EXTENDED' => Token::FLAG_KEYWORD, + 'EXTENT_SIZE' => Token::FLAG_KEYWORD, + 'FAST' => Token::FLAG_KEYWORD, + 'FAULTS' => Token::FLAG_KEYWORD, + 'FIELDS' => Token::FLAG_KEYWORD, + 'FILE' => Token::FLAG_KEYWORD, + 'FILE_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'FILTER' => Token::FLAG_KEYWORD, + 'FIRST' => Token::FLAG_KEYWORD, + 'FLUSH' => Token::FLAG_KEYWORD, + 'FOLLOWS' => Token::FLAG_KEYWORD, + 'FOUND' => Token::FLAG_KEYWORD, + 'FULL' => Token::FLAG_KEYWORD, + 'FUNCTION' => Token::FLAG_KEYWORD, + 'GENERAL' => Token::FLAG_KEYWORD, + 'GLOBAL' => Token::FLAG_KEYWORD, + 'GRANTS' => Token::FLAG_KEYWORD, + 'GROUP_REPLICATION' => Token::FLAG_KEYWORD, + 'GTIDS' => Token::FLAG_KEYWORD, + 'HANDLER' => Token::FLAG_KEYWORD, + 'HASH' => Token::FLAG_KEYWORD, + 'HELP' => Token::FLAG_KEYWORD, + 'HOST' => Token::FLAG_KEYWORD, + 'HOSTS' => Token::FLAG_KEYWORD, + 'IDENTIFIED' => Token::FLAG_KEYWORD, + 'IGNORE_SERVER_IDS' => Token::FLAG_KEYWORD, + 'IMPORT' => Token::FLAG_KEYWORD, + 'INDEXES' => Token::FLAG_KEYWORD, + 'INITIAL_SIZE' => Token::FLAG_KEYWORD, + 'INSERT_METHOD' => Token::FLAG_KEYWORD, + 'INSTALL' => Token::FLAG_KEYWORD, + 'INVISIBLE' => Token::FLAG_KEYWORD, + 'INVOKER' => Token::FLAG_KEYWORD, + 'IO' => Token::FLAG_KEYWORD, + 'IO_THREAD' => Token::FLAG_KEYWORD, + 'IPC' => Token::FLAG_KEYWORD, + 'ISOLATION' => Token::FLAG_KEYWORD, + 'ISSUER' => Token::FLAG_KEYWORD, + 'KEY_BLOCK_SIZE' => Token::FLAG_KEYWORD, + 'LANGUAGE' => Token::FLAG_KEYWORD, + 'LAST' => Token::FLAG_KEYWORD, + 'LEAVES' => Token::FLAG_KEYWORD, + 'LESS' => Token::FLAG_KEYWORD, + 'LEVEL' => Token::FLAG_KEYWORD, + 'LIST' => Token::FLAG_KEYWORD, + 'LOCAL' => Token::FLAG_KEYWORD, + 'LOCKS' => Token::FLAG_KEYWORD, + 'LOGFILE' => Token::FLAG_KEYWORD, + 'LOGS' => Token::FLAG_KEYWORD, + 'MASTER' => Token::FLAG_KEYWORD, + 'MASTER_SERVER_ID' => Token::FLAG_KEYWORD, + 'MAX_CONNECTIONS_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_QUERIES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_ROWS' => Token::FLAG_KEYWORD, + 'MAX_SIZE' => Token::FLAG_KEYWORD, + 'MAX_STATEMENT_TIME' => Token::FLAG_KEYWORD, + 'MAX_UPDATES_PER_HOUR' => Token::FLAG_KEYWORD, + 'MAX_USER_CONNECTIONS' => Token::FLAG_KEYWORD, + 'MEDIUM' => Token::FLAG_KEYWORD, + 'MEMORY' => Token::FLAG_KEYWORD, + 'MERGE' => Token::FLAG_KEYWORD, + 'MESSAGE_TEXT' => Token::FLAG_KEYWORD, + 'MIGRATE' => Token::FLAG_KEYWORD, + 'MIN_ROWS' => Token::FLAG_KEYWORD, + 'MODE' => Token::FLAG_KEYWORD, + 'MODIFY' => Token::FLAG_KEYWORD, + 'MUTEX' => Token::FLAG_KEYWORD, + 'MYSQL_ERRNO' => Token::FLAG_KEYWORD, + 'NAME' => Token::FLAG_KEYWORD, + 'NAMES' => Token::FLAG_KEYWORD, + 'NATIONAL' => Token::FLAG_KEYWORD, + 'NCHAR' => Token::FLAG_KEYWORD, + 'NDB' => Token::FLAG_KEYWORD, + 'NDBCLUSTER' => Token::FLAG_KEYWORD, + 'NEVER' => Token::FLAG_KEYWORD, + 'NEW' => Token::FLAG_KEYWORD, + 'NEXT' => Token::FLAG_KEYWORD, + 'NO' => Token::FLAG_KEYWORD, + 'NODEGROUP' => Token::FLAG_KEYWORD, + 'NONBLOCKING' => Token::FLAG_KEYWORD, + 'NONE' => Token::FLAG_KEYWORD, + 'NO_WAIT' => Token::FLAG_KEYWORD, + 'NUMBER' => Token::FLAG_KEYWORD, + 'NVARCHAR' => Token::FLAG_KEYWORD, + 'OFFSET' => Token::FLAG_KEYWORD, + 'ONE' => Token::FLAG_KEYWORD, + 'ONLY' => Token::FLAG_KEYWORD, + 'OPEN' => Token::FLAG_KEYWORD, + 'OPTIONS' => Token::FLAG_KEYWORD, + 'OWNER' => Token::FLAG_KEYWORD, + 'PACK_KEYS' => Token::FLAG_KEYWORD, + 'PAGE' => Token::FLAG_KEYWORD, + 'PARSER' => Token::FLAG_KEYWORD, + 'PARSE_GCOL_EXPR' => Token::FLAG_KEYWORD, + 'PARSE_TREE' => Token::FLAG_KEYWORD, + 'PARTIAL' => Token::FLAG_KEYWORD, + 'PARTITIONING' => Token::FLAG_KEYWORD, + 'PARTITIONS' => Token::FLAG_KEYWORD, + 'PERSIST' => Token::FLAG_KEYWORD, + 'PERSISTENT' => Token::FLAG_KEYWORD, + 'PERSIST_ONLY' => Token::FLAG_KEYWORD, + 'PHASE' => Token::FLAG_KEYWORD, + 'PLUGIN' => Token::FLAG_KEYWORD, + 'PLUGINS' => Token::FLAG_KEYWORD, + 'PLUGIN_DIR' => Token::FLAG_KEYWORD, + 'PORT' => Token::FLAG_KEYWORD, + 'PRECEDES' => Token::FLAG_KEYWORD, + 'PREPARE' => Token::FLAG_KEYWORD, + 'PRESERVE' => Token::FLAG_KEYWORD, + 'PREV' => Token::FLAG_KEYWORD, + 'PRIVILEGES' => Token::FLAG_KEYWORD, + 'PROCESSLIST' => Token::FLAG_KEYWORD, + 'PROFILE' => Token::FLAG_KEYWORD, + 'PROFILES' => Token::FLAG_KEYWORD, + 'PROXY' => Token::FLAG_KEYWORD, + 'QUERY' => Token::FLAG_KEYWORD, + 'QUICK' => Token::FLAG_KEYWORD, + 'READ_ONLY' => Token::FLAG_KEYWORD, + 'REBUILD' => Token::FLAG_KEYWORD, + 'RECOVER' => Token::FLAG_KEYWORD, + 'REDOFILE' => Token::FLAG_KEYWORD, + 'REDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'REDUNDANT' => Token::FLAG_KEYWORD, + 'RELAY' => Token::FLAG_KEYWORD, + 'RELAYLOG' => Token::FLAG_KEYWORD, + 'RELAY_LOG_FILE' => Token::FLAG_KEYWORD, + 'RELAY_LOG_POS' => Token::FLAG_KEYWORD, + 'RELAY_THREAD' => Token::FLAG_KEYWORD, + 'RELOAD' => Token::FLAG_KEYWORD, + 'REMOVE' => Token::FLAG_KEYWORD, + 'REORGANIZE' => Token::FLAG_KEYWORD, + 'REPAIR' => Token::FLAG_KEYWORD, + 'REPEATABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_REWRITE_DB' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_DO_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATE_WILD_IGNORE_TABLE' => Token::FLAG_KEYWORD, + 'REPLICATION' => Token::FLAG_KEYWORD, + 'RESET' => Token::FLAG_KEYWORD, + 'RESTORE' => Token::FLAG_KEYWORD, + 'RESUME' => Token::FLAG_KEYWORD, + 'RETURNED_SQLSTATE' => Token::FLAG_KEYWORD, + 'RETURNS' => Token::FLAG_KEYWORD, + 'ROLLBACK' => Token::FLAG_KEYWORD, + 'ROLLUP' => Token::FLAG_KEYWORD, + 'ROUTINE' => Token::FLAG_KEYWORD, + 'ROW' => Token::FLAG_KEYWORD, + 'ROWS' => Token::FLAG_KEYWORD, + 'ROW_FORMAT' => Token::FLAG_KEYWORD, + 'RTREE' => Token::FLAG_KEYWORD, + 'S3' => Token::FLAG_KEYWORD, + 'SAVEPOINT' => Token::FLAG_KEYWORD, + 'SCHEDULE' => Token::FLAG_KEYWORD, + 'SCHEMA_NAME' => Token::FLAG_KEYWORD, + 'SECURITY' => Token::FLAG_KEYWORD, + 'SERIALIZABLE' => Token::FLAG_KEYWORD, + 'SERVER' => Token::FLAG_KEYWORD, + 'SESSION' => Token::FLAG_KEYWORD, + 'SHARE' => Token::FLAG_KEYWORD, + 'SHUTDOWN' => Token::FLAG_KEYWORD, + 'SIGNED' => Token::FLAG_KEYWORD, + 'SIMPLE' => Token::FLAG_KEYWORD, + 'SLAVE' => Token::FLAG_KEYWORD, + 'SLOW' => Token::FLAG_KEYWORD, + 'SNAPSHOT' => Token::FLAG_KEYWORD, + 'SOCKET' => Token::FLAG_KEYWORD, + 'SOME' => Token::FLAG_KEYWORD, + 'SONAME' => Token::FLAG_KEYWORD, + 'SOUNDS' => Token::FLAG_KEYWORD, + 'SOURCE' => Token::FLAG_KEYWORD, + 'SQL_AFTER_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_AFTER_MTS_GAPS' => Token::FLAG_KEYWORD, + 'SQL_BEFORE_GTIDS' => Token::FLAG_KEYWORD, + 'SQL_BUFFER_RESULT' => Token::FLAG_KEYWORD, + 'SQL_CACHE' => Token::FLAG_KEYWORD, + 'SQL_NO_CACHE' => Token::FLAG_KEYWORD, + 'SQL_THREAD' => Token::FLAG_KEYWORD, + 'SQL_TSI_DAY' => Token::FLAG_KEYWORD, + 'SQL_TSI_HOUR' => Token::FLAG_KEYWORD, + 'SQL_TSI_MINUTE' => Token::FLAG_KEYWORD, + 'SQL_TSI_MONTH' => Token::FLAG_KEYWORD, + 'SQL_TSI_QUARTER' => Token::FLAG_KEYWORD, + 'SQL_TSI_SECOND' => Token::FLAG_KEYWORD, + 'SQL_TSI_WEEK' => Token::FLAG_KEYWORD, + 'SQL_TSI_YEAR' => Token::FLAG_KEYWORD, + 'STACKED' => Token::FLAG_KEYWORD, + 'START' => Token::FLAG_KEYWORD, + 'STARTS' => Token::FLAG_KEYWORD, + 'STATS_AUTO_RECALC' => Token::FLAG_KEYWORD, + 'STATS_PERSISTENT' => Token::FLAG_KEYWORD, + 'STATS_SAMPLE_PAGES' => Token::FLAG_KEYWORD, + 'STATUS' => Token::FLAG_KEYWORD, + 'STOP' => Token::FLAG_KEYWORD, + 'STORAGE' => Token::FLAG_KEYWORD, + 'STRING' => Token::FLAG_KEYWORD, + 'SUBCLASS_ORIGIN' => Token::FLAG_KEYWORD, + 'SUBJECT' => Token::FLAG_KEYWORD, + 'SUBPARTITION' => Token::FLAG_KEYWORD, + 'SUBPARTITIONS' => Token::FLAG_KEYWORD, + 'SUPER' => Token::FLAG_KEYWORD, + 'SUSPEND' => Token::FLAG_KEYWORD, + 'SWAPS' => Token::FLAG_KEYWORD, + 'SWITCHES' => Token::FLAG_KEYWORD, + 'TABLES' => Token::FLAG_KEYWORD, + 'TABLESPACE' => Token::FLAG_KEYWORD, + 'TABLE_CHECKSUM' => Token::FLAG_KEYWORD, + 'TABLE_NAME' => Token::FLAG_KEYWORD, + 'TEMPORARY' => Token::FLAG_KEYWORD, + 'TEMPTABLE' => Token::FLAG_KEYWORD, + 'THAN' => Token::FLAG_KEYWORD, + 'TRANSACTION' => Token::FLAG_KEYWORD, + 'TRIGGERS' => Token::FLAG_KEYWORD, + 'TYPE' => Token::FLAG_KEYWORD, + 'TYPES' => Token::FLAG_KEYWORD, + 'UNCOMMITTED' => Token::FLAG_KEYWORD, + 'UNDEFINED' => Token::FLAG_KEYWORD, + 'UNDOFILE' => Token::FLAG_KEYWORD, + 'UNDO_BUFFER_SIZE' => Token::FLAG_KEYWORD, + 'UNICODE' => Token::FLAG_KEYWORD, + 'UNINSTALL' => Token::FLAG_KEYWORD, + 'UNKNOWN' => Token::FLAG_KEYWORD, + 'UNTIL' => Token::FLAG_KEYWORD, + 'UPGRADE' => Token::FLAG_KEYWORD, + 'USER_RESOURCES' => Token::FLAG_KEYWORD, + 'USE_FRM' => Token::FLAG_KEYWORD, + 'VALIDATION' => Token::FLAG_KEYWORD, + 'VALUE' => Token::FLAG_KEYWORD, + 'VARIABLES' => Token::FLAG_KEYWORD, + 'VIEW' => Token::FLAG_KEYWORD, + 'WAIT' => Token::FLAG_KEYWORD, + 'WARNINGS' => Token::FLAG_KEYWORD, + 'WITHOUT' => Token::FLAG_KEYWORD, + 'WORK' => Token::FLAG_KEYWORD, + 'WRAPPER' => Token::FLAG_KEYWORD, + 'X509' => Token::FLAG_KEYWORD, + 'XA' => Token::FLAG_KEYWORD, + 'XID' => Token::FLAG_KEYWORD, + 'ACCESSIBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ALTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ANALYZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ASENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BEFORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BETWEEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BOTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASCADE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CHECK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COLUMN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONDITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONSTRAINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CONTINUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CREATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CROSS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'CURSOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DATABASES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DAY_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DECLARE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELAYED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DESCRIBE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DETERMINISTIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DISTINCTROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DIV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DROP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'DUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EACH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ELSEIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ENCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ESCAPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'EXPLAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FALSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FETCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FORCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FOREIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'FROM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GENERATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GRANT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'GROUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HAVING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HIGH_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'HOUR_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IGNORE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INNER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INOUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INSENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'INTO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IO_BEFORE_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'IS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ITERATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'KILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEADING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LEAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LIMIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LINES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOOP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'LOW_PRIORITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MANUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MAXVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MINUTE_SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'MODIFIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NATURAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NO_WRITE_TO_BINLOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIMIZER_COSTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OPTIONALLY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ORDER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OUTFILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'OVER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARALLEL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRECISION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PRIMARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PROCEDURE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'PURGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'QUALIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RANGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'READ_WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REFERENCES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REGEXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RENAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REQUIRE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESTRICT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RETURN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'REVOKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RLIKE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SCHEMAS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SECOND_MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SELECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SENSITIVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SEPARATOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SHOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SIGNAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SPECIFIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLEXCEPTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLSTATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQLWARNING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_BIG_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_CALC_FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SQL_SMALL_RESULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'SSL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STARTING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STORED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'STRAIGHT_JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TABLESAMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TERMINATED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'THEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRAILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRIGGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'TRUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNDO' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNLOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UNSIGNED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USAGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'USING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARCHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'VIRTUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHEN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WHILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'WRITE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'YEAR_MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'ZEROFILL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'AND CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'AND NO CHAIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'COALESCE PARTITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CONTAINS SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'CROSS JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATA DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARACTER SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DEFAULT COLLATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DISABLE ON SLAVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ENCLOSED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ESCAPED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR EACH ROW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FOR UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'FULL OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GENERATED ALWAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'GROUP BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'IF NOT EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INDEX DIRECTORY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'INNER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LANGUAGE SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LESS THAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR HASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LINEAR KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOAD DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'LOCK IN SHARE MODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'MODIFIES SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL LEFT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NATURAL RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO ACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO RELEASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NO SQL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'NOT NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION NOT PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON COMPLETION PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON DELETE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON SCHEDULE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ON UPDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'OR REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ORDER BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'PARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'READS SQL DATA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'RIGHT OUTER JOIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SELECT TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET NULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SET PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SQL SECURITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'START TRANSACTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'STARTING BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'SUBPARTITION BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'TERMINATED BY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION ALL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'UNION DISTINCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH CONSISTENT SNAPSHOT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH PARSER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'WITH ROLLUP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BOOLEAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'DATETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'ENUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'FIXED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'GEOMETRY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'JSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTILINEPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'MULTISET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'SERIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'TEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'XML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'BIGINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DECIMAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'DOUBLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FLOAT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INT8' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'INTEGER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONGTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MEDIUMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'MIDDLEINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'NUMERIC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'REAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'SMALLINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYBLOB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'TINYTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE, + 'BINARY VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'CHARACTER VARYING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'LONG VARCHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_DATA_TYPE, + 'FULLTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_KEY, + 'FOREIGN KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'FULLTEXT KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'IDENTIFIED WITH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'INDEX KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'PRIMARY KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'SPATIAL KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'UNIQUE KEY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_KEY, + 'ABS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ACOS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ADDTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AGAINST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ANY_VALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASCII' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ATAN2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'AVG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BENCHMARK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIN_TO_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_AND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_OR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BIT_XOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEIL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CEILING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARACTER_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHARSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COALESCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COERCIBILITY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COLLATION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONCAT_WS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONNECTION_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT_TZ' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CRC32' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CURTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DATE_SUB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFMONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DAYOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DECODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DEGREES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_DECRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DES_ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ELT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCODE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENCRYPT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXPORT_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'EXTRACTVALUE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIELD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FIND_IN_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FLOOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FOUND_ROWS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_UNIXTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'FROM_VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GET_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GLENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GREATEST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GROUP_CONCAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBSET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'GTID_SUBTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'HOUR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IFNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET6_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_ATON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INET_NTOA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISNULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_FREE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_COMPAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV4_MAPPED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_IPV6' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_USED_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'IS_UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_APPEND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_ARRAY_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_CONTAINS_PATH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_DEPTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_EXTRACT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_KEYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_MERGE_PRESERVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_OBJECT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_PRETTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REMOVE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SEARCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_FREE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_STORAGE_SIZE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_TYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_UNQUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'JSON_VALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LAST_INSERT_ID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LEAST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOAD_FILE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG10' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOG2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LOWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'LTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKEDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKETIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAKE_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MASTER_POS_WAIT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MAX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVEREDBY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRCOVERS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRDISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBREQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRINTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBROVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRTOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MBRWITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MD5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MICROSECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MINUTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MONTHNAME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NAME_CONST' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NOW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NULLIF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OCTET_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OLD_PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PASSWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_ADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PERIOD_DIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'PI' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POSITION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POW' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'POWER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUARTER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'QUOTE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RADIANS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RAND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RANDOM_BYTES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_ALL_LOCKS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RELEASE_LOCK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'REVERSE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROUND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ROW_COUNT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RPAD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'RTRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SECOND' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SEC_TO_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SESSION_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA1' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SHA2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SLEEP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SOUNDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SPACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SQRT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STDDEV_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRCMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STRING_TO_VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'STR_TO_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_AREA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASBINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ASWKT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_BUFFER_STRATEGY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CENTROID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONTAINS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CONVEXHULL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_CROSSES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DIMENSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISJOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_DISTANCE_SPHERE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENDPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EQUALS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_EXTERIORRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMTXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMCOLLFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYCOLLECTIONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMETRYTYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMGEOJSON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_GEOMFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERIORRINGN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_INTERSECTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISCLOSED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISEMPTY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISSIMPLE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_ISVALID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LATFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_LONGFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MAKEENVELOPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MLINEFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MPOLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTILINESTRINGFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_MULTIPOLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMGEOMETRIES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMINTERIORRINGS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_NUMPOINTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_OVERLAPS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMGEOHASH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POINTN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMTEXT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_POLYGONFROMWKB' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SIMPLIFY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SRID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_STARTPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_SYMDIFFERENCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_UNION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_VALIDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'ST_Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBSTRING_INDEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUBTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SUM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSDATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'SYSTEM_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TAN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMEDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPADD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMPDIFF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_FORMAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TIME_TO_SEC' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TOUCHES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_BASE64' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_DAYS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_SECONDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TO_VECTOR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'TRUNCATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UCASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNCOMPRESSED_LENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNHEX' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UNIX_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPDATEXML' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UPPER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_SHORT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'UUID_TO_BIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VALIDATE_PASSWORD_STRENGTH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VARIANCE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_POP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VAR_SAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VECTOR_DIM' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VECTOR_TO_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'VERSION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_FOR_EXECUTED_GTID_SET' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKDAY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEEKOFYEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WEIGHT_STRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'WITHIN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'X' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'Y' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'YEARWEEK' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, + 'CONVERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'CURRENT_USER' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DATABASE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'DEFAULT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'EXISTS' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IF' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'INSERT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LEFT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'LOCALTIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MATCH' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'MOD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPEAT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'REPLACE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'RIGHT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'SCHEMA' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'UTC_TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'VALUES' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_FUNCTION, + 'NOT IN' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED | Token::FLAG_KEYWORD_FUNCTION, + 'DATE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'GEOMETRYCOLLECTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'LINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTILINESTRING' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'MULTIPOLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POINT' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'POLYGON' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIME' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'TIMESTAMP' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'YEAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'BINARY' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'CHAR' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + 'INTERVAL' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_DATA_TYPE | Token::FLAG_KEYWORD_FUNCTION, + ]; +} diff --git a/src/Parser.php b/src/Parser.php index 759d58dcd..526461dcf 100644 --- a/src/Parser.php +++ b/src/Parser.php @@ -43,6 +43,7 @@ class Parser extends Core 'BACKUP' => 'PhpMyAdmin\\SqlParser\\Statements\\BackupStatement', 'CHECK' => 'PhpMyAdmin\\SqlParser\\Statements\\CheckStatement', 'CHECKSUM' => 'PhpMyAdmin\\SqlParser\\Statements\\ChecksumStatement', + 'KILL' => 'PhpMyAdmin\\SqlParser\\Statements\\KillStatement', 'OPTIMIZE' => 'PhpMyAdmin\\SqlParser\\Statements\\OptimizeStatement', 'REPAIR' => 'PhpMyAdmin\\SqlParser\\Statements\\RepairStatement', 'RESTORE' => 'PhpMyAdmin\\SqlParser\\Statements\\RestoreStatement', diff --git a/src/Statement.php b/src/Statement.php index 28de61255..d63d86a03 100644 --- a/src/Statement.php +++ b/src/Statement.php @@ -9,6 +9,7 @@ use function array_flip; use function array_keys; +use function array_push; use function count; use function in_array; use function stripos; @@ -457,6 +458,28 @@ public function getClauses() return static::$CLAUSES; } + /** + * Gets the clause order of this statement as an array + * with clause as key and index as value. + * + * @return array + */ + public function getClauseOrder(): array + { + $clauses = []; + foreach (array_keys($this->getClauses()) as $key) { + if ($key === '_END_OPTIONS') { + if (static::$END_OPTIONS !== []) { + array_push($clauses, ...array_keys(static::$END_OPTIONS)); + } + } else { + $clauses[] = $key; + } + } + + return array_flip($clauses); + } + /** * Builds the string representation of this statement. * diff --git a/src/Statements/AlterStatement.php b/src/Statements/AlterStatement.php index 3cd902d78..3c13f5769 100644 --- a/src/Statements/AlterStatement.php +++ b/src/Statements/AlterStatement.php @@ -129,6 +129,8 @@ public function parse(Parser $parser, TokensList $list) $options = AlterOperation::$USER_OPTIONS; } elseif ($this->options->has('EVENT')) { $options = AlterOperation::$EVENT_OPTIONS; + } elseif ($this->options->has('FUNCTION') || $this->options->has('PROCEDURE')) { + $options = AlterOperation::$ROUTINE_OPTIONS; } $this->altered[] = AlterOperation::parse($parser, $list, $options); diff --git a/src/Statements/KillStatement.php b/src/Statements/KillStatement.php new file mode 100644 index 000000000..f020d795d --- /dev/null +++ b/src/Statements/KillStatement.php @@ -0,0 +1,177 @@ +> + * @psalm-var array 1, + 'SOFT' => 1, + 'CONNECTION' => 2, + 'QUERY' => 2, + 'USER' => 2, + ]; + + /** + * Holds the identifier if explicitly set + * + * @psalm-var Statement|int|null + */ + public $identifier = null; + + /** + * Whether MariaDB ID keyword is used or not. + * + * @var bool + */ + public $idKeywordUsed = false; + + /** + * Whether parenthesis used around the identifier or not + * + * @var bool + */ + public $parenthesisUsed = false; + + /** @throws ParserException */ + public function parse(Parser $parser, TokensList $list): void + { + /** + * The state of the parser. + * + * Below are the states of the parser. + * + * 0 --------------------- [ OPTIONS PARSED ] --------------------------> 0 + * + * 0 -------------------- [ number ] -----------------------------------> 2 + * + * 0 -------------------- [ ( ] ----------------------------------------> 3 + * + * 0 -------------------- [ QUERY ID ] ---------------------------------> 0 + * + * 3 -------------------- [ number ] -----------------------------------> 3 + * + * 3 -------------------- [ SELECT STATEMENT ] -------------------------> 2 + * + * 3 -------------------- [ ) ] ----------------------------------------> 2 + * + * 2 ----------------------------------------------------------> Final state + */ + $state = 0; + + ++$list->idx; // Skipping `KILL`. + $this->options = OptionsArray::parse($parser, $list, static::$OPTIONS); + ++$list->idx; + for (; $list->idx < $list->count; ++$list->idx) { + $token = $list->tokens[$list->idx]; + + if ($token->type === Token::TYPE_WHITESPACE || $token->type === Token::TYPE_COMMENT) { + continue; + } + + switch ($state) { + case 0: + $currIdx = $list->idx; + $prev = $list->getPreviousOfType(Token::TYPE_KEYWORD); + $list->idx = $currIdx; + if ($token->type === Token::TYPE_NUMBER && is_int($token->value)) { + $this->identifier = $token->value; + $state = 2; + } elseif ($token->type === Token::TYPE_OPERATOR && $token->value === '(') { + $this->parenthesisUsed = true; + $state = 3; + } elseif ($prev && $token->value === 'ID' && $prev->value === 'QUERY') { + $this->idKeywordUsed = true; + $state = 0; + } else { + $parser->error('Unexpected token.', $token); + break 2; + } + + break; + + case 3: + if ($token->type === Token::TYPE_KEYWORD && $token->value === 'SELECT') { + $subList = new TokensList(array_slice($list->tokens, $list->idx - 1)); + $subParser = new Parser($subList); + if ($subParser->errors !== []) { + foreach ($subParser->errors as $error) { + $parser->errors[] = $error; + } + + break; + } + + $this->identifier = $subParser->statements[0]; + $state = 2; + } elseif ($token->type === Token::TYPE_OPERATOR && $token->value === ')') { + $state = 2; + } elseif ($token->type === Token::TYPE_NUMBER && is_int($token->value)) { + $this->identifier = $token->value; + $state = 3; + } else { + $parser->error('Unexpected token.', $token); + break 2; + } + + break; + } + } + + if ($state !== 2) { + $token = $list->tokens[$list->idx]; + $parser->error('Unexpected end of the KILL statement.', $token); + } + + --$list->idx; + } + + /** + * {@inheritdoc} + */ + public function build() + { + $ret = 'KILL'; + + if ($this->options !== null && $this->options->options !== []) { + $ret .= ' ' . OptionsArray::build($this->options); + } + + if ($this->idKeywordUsed) { + $ret .= ' ID'; + } + + $identifier = (string) $this->identifier; + if ($this->parenthesisUsed) { + $ret .= ' (' . $identifier . ')'; + } else { + $ret .= ' ' . $identifier; + } + + return $ret; + } +} diff --git a/src/Statements/UpdateStatement.php b/src/Statements/UpdateStatement.php index d6dcdf95c..021e09d5f 100644 --- a/src/Statements/UpdateStatement.php +++ b/src/Statements/UpdateStatement.php @@ -10,7 +10,11 @@ use PhpMyAdmin\SqlParser\Components\Limit; use PhpMyAdmin\SqlParser\Components\OrderKeyword; use PhpMyAdmin\SqlParser\Components\SetOperation; +use PhpMyAdmin\SqlParser\Exceptions\ParserException; +use PhpMyAdmin\SqlParser\Parser; use PhpMyAdmin\SqlParser\Statement; +use PhpMyAdmin\SqlParser\Token; +use PhpMyAdmin\SqlParser\TokensList; /** * `UPDATE` statement. @@ -135,4 +139,25 @@ class UpdateStatement extends Statement * @var JoinKeyword[]|null */ public $join; + + /** + * Function called after the token was processed. + * In the update statement, this is used to check that at least one assignment has been set to throw an error if a + * query like `UPDATE acme SET WHERE 1;` is parsed. + * + * @return void + * + * @throws ParserException throws the exception, if strict mode is enabled. + */ + public function after(Parser $parser, TokensList $list, Token $token) + { + /** @psalm-var string $tokenValue */ + $tokenValue = $token->value; + // Ensure we finished to parse the "SET" token, and if yes, ensure that assignments are defined. + if ($this->set !== [] || (Parser::$KEYWORD_PARSERS[$tokenValue]['field'] ?? null) !== 'set') { + return; + } + + $parser->error('Missing assignment in SET operation.', $list->tokens[$list->idx]); + } } diff --git a/src/Token.php b/src/Token.php index 0e2698bb5..e4a2f45d2 100644 --- a/src/Token.php +++ b/src/Token.php @@ -129,6 +129,7 @@ class Token // Flags that describe the tokens in more detail. // All keywords must have flag 1 so `Context::isKeyword` method doesn't // require strict comparison. + public const FLAG_KEYWORD = 1; public const FLAG_KEYWORD_RESERVED = 2; public const FLAG_KEYWORD_COMPOSED = 4; public const FLAG_KEYWORD_DATA_TYPE = 8; diff --git a/src/Tools/ContextGenerator.php b/src/Tools/ContextGenerator.php index 29a7e675b..3f9bcffb5 100644 --- a/src/Tools/ContextGenerator.php +++ b/src/Tools/ContextGenerator.php @@ -4,6 +4,9 @@ namespace PhpMyAdmin\SqlParser\Tools; +use PhpMyAdmin\SqlParser\Token; + +use function array_filter; use function array_map; use function array_merge; use function array_slice; @@ -15,11 +18,9 @@ use function implode; use function ksort; use function preg_match; -use function round; use function scandir; use function sort; use function sprintf; -use function str_repeat; use function str_replace; use function str_split; use function strlen; @@ -28,8 +29,7 @@ use function substr; use function trim; -use const FILE_IGNORE_NEW_LINES; -use const FILE_SKIP_EMPTY_LINES; +use const ARRAY_FILTER_USE_KEY; use const SORT_STRING; /** @@ -43,10 +43,10 @@ class ContextGenerator * @var array */ public static $LABELS_FLAGS = [ - '(R)' => 2, // reserved - '(D)' => 8, // data type - '(K)' => 16, // keyword - '(F)' => 32, // function name + '(R)' => Token::FLAG_KEYWORD_RESERVED, + '(D)' => Token::FLAG_KEYWORD_DATA_TYPE, + '(K)' => Token::FLAG_KEYWORD_KEY, + '(F)' => Token::FLAG_KEYWORD_FUNCTION, ]; /** @@ -64,6 +64,8 @@ class ContextGenerator 'MySql80100' => 'https://dev.mysql.com/doc/refman/8.1/en/keywords.html', 'MySql80200' => 'https://dev.mysql.com/doc/refman/8.2/en/keywords.html', 'MySql80300' => 'https://dev.mysql.com/doc/refman/8.3/en/keywords.html', + 'MySql80400' => 'https://dev.mysql.com/doc/refman/8.4/en/keywords.html', + 'MySql90000' => 'https://dev.mysql.com/doc/refman/9.0/en/keywords.html', 'MariaDb100000' => 'https://mariadb.com/kb/en/reserved-words/', 'MariaDb100100' => 'https://mariadb.com/kb/en/reserved-words/', 'MariaDb100200' => 'https://mariadb.com/kb/en/reserved-words/', @@ -81,6 +83,21 @@ class ContextGenerator 'MariaDb110200' => 'https://mariadb.com/kb/en/reserved-words/', 'MariaDb110300' => 'https://mariadb.com/kb/en/reserved-words/', 'MariaDb110400' => 'https://mariadb.com/kb/en/reserved-words/', + 'MariaDb110500' => 'https://mariadb.com/kb/en/reserved-words/', + ]; + + /** + * Reversed const <=> int from {@see Token} class to write the constant name instead of its value. + * + * @var array + */ + private static $typesNumToConst = [ + 1 => 'Token::FLAG_KEYWORD', + 2 => 'Token::FLAG_KEYWORD_RESERVED', + 4 => 'Token::FLAG_KEYWORD_COMPOSED', + 8 => 'Token::FLAG_KEYWORD_DATA_TYPE', + 16 => 'Token::FLAG_KEYWORD_KEY', + 32 => 'Token::FLAG_KEYWORD_FUNCTION', ]; /** @@ -117,9 +134,7 @@ class %2$s extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array @@ -133,18 +148,15 @@ class %2$s extends Context /** * Sorts an array of words. * - * @param array>> $arr + * @param array> $arr * - * @return array>> + * @return array> */ public static function sortWords(array &$arr) { ksort($arr); - foreach ($arr as &$wordsByLen) { - ksort($wordsByLen); - foreach ($wordsByLen as &$words) { - sort($words, SORT_STRING); - } + foreach ($arr as &$words) { + sort($words, SORT_STRING); } return $arr; @@ -153,23 +165,28 @@ public static function sortWords(array &$arr) /** * Reads a list of words and sorts it by type, length and keyword. * - * @param string[] $files + * @param list $files * - * @return array>> + * @return array> */ public static function readWords(array $files) { + /** @psalm-var list $words */ $words = []; foreach ($files as $file) { - $words = array_merge($words, file($file, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES)); + $words = array_merge($words, file($file)); } /** @var array $types */ $types = []; for ($i = 0, $count = count($words); $i !== $count; ++$i) { - $type = 1; $value = trim($words[$i]); + if ($value === '') { + continue; + } + + $type = Token::FLAG_KEYWORD; // Reserved, data types, keys, functions, etc. keywords. foreach (static::$LABELS_FLAGS as $label => $flags) { @@ -183,13 +200,8 @@ public static function readWords(array $files) // Composed keyword. if (strstr($value, ' ') !== false) { - $type |= 2; // Reserved keyword. - $type |= 4; // Composed keyword. - } - - $len = strlen($words[$i]); - if ($len === 0) { - continue; + $type |= Token::FLAG_KEYWORD_RESERVED; + $type |= Token::FLAG_KEYWORD_COMPOSED; } $value = strtoupper($value); @@ -200,18 +212,10 @@ public static function readWords(array $files) } } + // Prepare an array in a way to sort by type, then by word. $ret = []; foreach ($types as $word => $type) { - $len = strlen($word); - if (! isset($ret[$type])) { - $ret[$type] = []; - } - - if (! isset($ret[$type][$len])) { - $ret[$type][$len] = []; - } - - $ret[$type][$len][] = $word; + $ret[$type][] = $word; } return static::sortWords($ret); @@ -220,73 +224,49 @@ public static function readWords(array $files) /** * Prints an array of a words in PHP format. * - * @param array>> $words the list of words to be formatted - * @param int $spaces the number of spaces that starts every line - * @param int $line the length of a line - * - * @return string + * @param array> $words the list of words to be formatted */ - public static function printWords($words, $spaces = 8, $line = 140) + public static function printWords(array $words): string { - $typesCount = count($words); $ret = ''; - $j = 0; - foreach ($words as $type => $wordsByType) { - foreach ($wordsByType as $len => $wordsByLen) { - $count = round(($line - $spaces) / ($len + 9)); // strlen("'' => 1, ") = 9 - $i = 0; - - foreach ($wordsByLen as $word) { - if ($i === 0) { - $ret .= str_repeat(' ', $spaces); - } - - $ret .= sprintf('\'%s\' => %s, ', $word, $type); - if (++$i !== $count && ++$i <= $count) { - continue; - } - - $ret .= "\n"; - $i = 0; - } - - if ($i === 0) { - continue; - } - - $ret .= "\n"; + foreach ($wordsByType as $word) { + $ret .= sprintf(" '%s' => %s,\n", $word, self::translateIntTypeToTextConstant($type)); } + } - if (++$j >= $typesCount) { - continue; - } + return $ret; + } - $ret .= "\n"; - } + private static function translateIntTypeToTextConstant(int $type): string + { + $matchingFlags = array_filter( + self::$typesNumToConst, + static function (int $num) use ($type): bool { + return ($type & $num) !== 0; + }, + ARRAY_FILTER_USE_KEY + ); - // Trim trailing spaces and return. - return str_replace(" \n", "\n", $ret); + return implode(' | ', $matchingFlags); } /** * Generates a context's class. * - * @param array>>> $options the options for this context + * @param array>> $options the options for this context * @psalm-param array{ * name: string, * class: string, * link: string, - * keywords: array>> + * keywords: array> * } $options * * @return string */ public static function generate($options) { - if (isset($options['keywords'])) { - $options['keywords'] = static::printWords($options['keywords']); - } + $options['keywords'] = static::printWords($options['keywords']); return sprintf(self::TEMPLATE, $options['name'], $options['class'], $options['link'], $options['keywords']); } @@ -302,7 +282,7 @@ public static function formatName($name) { /* Split name and version */ $parts = []; - if (preg_match('/([^[0-9]*)([0-9]*)/', $name, $parts) === false) { + if (preg_match('/^(\D+)(\d+)$/', $name, $parts) === 0) { return $name; } @@ -326,7 +306,7 @@ public static function formatName($name) $version = array_map('intval', str_split($versionString, 2)); /* Remove trailing zero */ if ($version[count($version) - 1] === 0) { - $version = array_slice($version, 0, count($version) - 1); + $version = array_slice($version, 0, -1); } /* Create name */ diff --git a/src/Utils/Query.php b/src/Utils/Query.php index f5b5320b7..e9e335937 100644 --- a/src/Utils/Query.php +++ b/src/Utils/Query.php @@ -18,6 +18,7 @@ use PhpMyAdmin\SqlParser\Statements\DropStatement; use PhpMyAdmin\SqlParser\Statements\ExplainStatement; use PhpMyAdmin\SqlParser\Statements\InsertStatement; +use PhpMyAdmin\SqlParser\Statements\KillStatement; use PhpMyAdmin\SqlParser\Statements\LoadStatement; use PhpMyAdmin\SqlParser\Statements\OptimizeStatement; use PhpMyAdmin\SqlParser\Statements\RenameStatement; @@ -36,6 +37,7 @@ use function count; use function in_array; use function is_string; +use function strtoupper; use function trim; /** @@ -65,7 +67,7 @@ * limit?: bool, * offset?: bool, * order?: bool, - * querytype: ('ALTER'|'ANALYZE'|'CALL'|'CHECK'|'CHECKSUM'|'CREATE'|'DELETE'|'DROP'|'EXPLAIN'|'INSERT'|'LOAD'|'OPTIMIZE'|'REPAIR'|'REPLACE'|'SELECT'|'SET'|'SHOW'|'UPDATE'|false), + * querytype: ('ALTER'|'ANALYZE'|'CALL'|'CHECK'|'CHECKSUM'|'CREATE'|'DELETE'|'DROP'|'EXPLAIN'|'INSERT'|'KILL'|'LOAD'|'OPTIMIZE'|'REPAIR'|'REPLACE'|'SELECT'|'SET'|'SHOW'|'UPDATE'|false), * reload?: bool, * select_from?: bool, * union?: bool @@ -317,9 +319,10 @@ private static function getFlagsSelect($statement, $flags) foreach ($expressions as $expr) { if (! empty($expr->function)) { - if ($expr->function === 'COUNT') { + $function = strtoupper($expr->function); + if ($function === 'COUNT') { $flags['is_count'] = true; - } elseif (in_array($expr->function, static::$FUNCTIONS)) { + } elseif (in_array($function, static::$FUNCTIONS, true)) { $flags['is_func'] = true; } } @@ -431,6 +434,8 @@ public static function getFlags($statement, $all = false) $flags['is_affected'] = true; } elseif ($statement instanceof SetStatement) { $flags['querytype'] = 'SET'; + } elseif ($statement instanceof KillStatement) { + $flags['querytype'] = 'KILL'; } if ( @@ -641,7 +646,7 @@ public static function getClause($statement, $list, $clause, $type = 0, $skipFir /** * The clauses of this type of statement and their index. */ - $clauses = array_flip(array_keys($statement->getClauses())); + $clauses = $statement->getClauseOrder(); /** * Lexer used for lexing the clause. diff --git a/tests/Builder/AlterStatementTest.php b/tests/Builder/AlterStatementTest.php index 4dcaf96f1..f011b1a54 100644 --- a/tests/Builder/AlterStatementTest.php +++ b/tests/Builder/AlterStatementTest.php @@ -193,4 +193,68 @@ public function testBuilderRenameColumn(string $query): void $stmt = $parser->statements[0]; $this->assertEquals($query, $stmt->build()); } + + /** + * @return Generator + */ + public static function provideBuilderForAlterRoutine(): Generator + { + $query = 'ALTER FUNCTION func_name COMMENT "test"'; + + yield 'Function with only comment' => [$query]; + + $query = 'ALTER FUNCTION func_name LANGUAGE SQL'; + + yield 'Function with only language' => [$query]; + + $query = 'ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER'; + + yield 'Function with all options combinations #1' => [$query]; + + $query = 'ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL NO SQL SQL SECURITY INVOKER'; + + yield 'Function with all options combinations #2' => [$query]; + + $query = 'ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL READS SQL DATA'; + + yield 'Function with all remaining options #1' => [$query]; + + $query = 'ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL MODIFIES SQL DATA'; + + yield 'Function with all remaining options #2' => [$query]; + + $query = 'ALTER PROCEDURE func_name COMMENT "test"'; + + yield 'Procedure with only comment' => [$query]; + + $query = 'ALTER PROCEDURE proc_name LANGUAGE SQL'; + + yield 'Procedure with only language' => [$query]; + + $query = 'ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER'; + + yield 'Procedure with all options combinations #1' => [$query]; + + $query = 'ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL NO SQL SQL SECURITY INVOKER'; + + yield 'Procedure with all options combinations #2' => [$query]; + + $query = 'ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL READS SQL DATA'; + + yield 'Procedure with all remaining options #1' => [$query]; + + $query = 'ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL MODIFIES SQL DATA'; + + yield 'Procedure with all remaining options #2' => [$query]; + } + + /** + * @dataProvider provideBuilderForAlterRoutine + */ + public function testBuilderForAlterRoutine(string $query): void + { + $parser = new Parser($query); + $stmt = $parser->statements[0]; + $this->assertEquals($query, $stmt->build()); + } } diff --git a/tests/Components/Array2dTest.php b/tests/Components/Array2dTest.php index 3b284eba1..acf40aae7 100644 --- a/tests/Components/Array2dTest.php +++ b/tests/Components/Array2dTest.php @@ -36,16 +36,16 @@ public function testParseErr1(): void { $parser = new Parser(); Array2d::parse($parser, $this->getTokensList('(1, 2 +')); - - $this->markTestIncomplete('This test has not been implemented yet.'); + $this->assertCount(1, $parser->errors); + $this->assertEquals('A closing bracket was expected.', $parser->errors[0]->getMessage()); } public function testParseErr2(): void { $parser = new Parser(); Array2d::parse($parser, $this->getTokensList('(1, 2 TABLE')); - - $this->markTestIncomplete('This test has not been implemented yet.'); + $this->assertCount(1, $parser->errors); + $this->assertEquals('A closing bracket was expected.', $parser->errors[0]->getMessage()); } public function testParseErr3(): void diff --git a/tests/Lexer/ContextTest.php b/tests/Lexer/ContextTest.php index 2e3668dca..60d00eaf9 100644 --- a/tests/Lexer/ContextTest.php +++ b/tests/Lexer/ContextTest.php @@ -5,6 +5,7 @@ namespace PhpMyAdmin\SqlParser\Tests\Lexer; use PhpMyAdmin\SqlParser\Context; +use PhpMyAdmin\SqlParser\Contexts; use PhpMyAdmin\SqlParser\Tests\TestCase; use Throwable; @@ -64,7 +65,7 @@ public static function contextLoadingProvider(): array 'MySql50700', ], 'MySQL fallback' => [ - 'MySql99999', + 'MySql9897969594', 'MySql50700', ], 'MariaDB match' => [ @@ -110,10 +111,79 @@ public static function contextNamesProvider(): array ['MySql50600'], ['MySql50700'], ['MySql80000'], + ['MySql80100'], + ['MySql80200'], + ['MySql80300'], + ['MySql80400'], + ['MySql90000'], ['MariaDb100000'], ['MariaDb100100'], ['MariaDb100200'], ['MariaDb100300'], + ['MariaDb100400'], + ['MariaDb100500'], + ['MariaDb100600'], + ['MariaDb100700'], + ['MariaDb100800'], + ['MariaDb100900'], + ['MariaDb101000'], + ['MariaDb101100'], + ['MariaDb110000'], + ['MariaDb110100'], + ['MariaDb110200'], + ['MariaDb110300'], + ['MariaDb110400'], + ['MariaDb110500'], + ]; + } + + /** + * @dataProvider contextClassesProvider + */ + public function testLoadAllByClass(string $context): void + { + Context::load($context); + $this->assertEquals('\\' . $context, Context::$loadedContext); + + // Restoring context. + Context::load(''); + } + + /** + * @return string[][] + */ + public static function contextClassesProvider(): array + { + return [ + [Contexts\ContextMySql50000::class], + [Contexts\ContextMySql50100::class], + [Contexts\ContextMySql50500::class], + [Contexts\ContextMySql50600::class], + [Contexts\ContextMySql50700::class], + [Contexts\ContextMySql80000::class], + [Contexts\ContextMySql80100::class], + [Contexts\ContextMySql80200::class], + [Contexts\ContextMySql80300::class], + [Contexts\ContextMySql80400::class], + [Contexts\ContextMySql90000::class], + [Contexts\ContextMariaDb100000::class], + [Contexts\ContextMariaDb100100::class], + [Contexts\ContextMariaDb100200::class], + [Contexts\ContextMariaDb100300::class], + [Contexts\ContextMariaDb100400::class], + [Contexts\ContextMariaDb100500::class], + [Contexts\ContextMariaDb100600::class], + [Contexts\ContextMariaDb100700::class], + [Contexts\ContextMariaDb100800::class], + [Contexts\ContextMariaDb100900::class], + [Contexts\ContextMariaDb101000::class], + [Contexts\ContextMariaDb101100::class], + [Contexts\ContextMariaDb110000::class], + [Contexts\ContextMariaDb110100::class], + [Contexts\ContextMariaDb110200::class], + [Contexts\ContextMariaDb110300::class], + [Contexts\ContextMariaDb110400::class], + [Contexts\ContextMariaDb110500::class], ]; } diff --git a/tests/Parser/AlterStatementTest.php b/tests/Parser/AlterStatementTest.php index fea716f37..f4f739ca6 100644 --- a/tests/Parser/AlterStatementTest.php +++ b/tests/Parser/AlterStatementTest.php @@ -95,6 +95,18 @@ public static function alterProvider(): array ['parser/parseAlterEventWithOtherDefiners'], ['parser/parseAlterRenameColumn'], ['parser/parseAlterRenameColumns'], + ['parser/parseAlterFunction1'], + ['parser/parseAlterFunction2'], + ['parser/parseAlterFunction3'], + ['parser/parseAlterFunction4'], + ['parser/parseAlterFunction5'], + ['parser/parseAlterFunction6'], + ['parser/parseAlterProcedure1'], + ['parser/parseAlterProcedure2'], + ['parser/parseAlterProcedure3'], + ['parser/parseAlterProcedure4'], + ['parser/parseAlterProcedure5'], + ['parser/parseAlterProcedure6'], ]; } } diff --git a/tests/Parser/CreateStatementTest.php b/tests/Parser/CreateStatementTest.php index 1cdd86f38..5c4ad0573 100644 --- a/tests/Parser/CreateStatementTest.php +++ b/tests/Parser/CreateStatementTest.php @@ -66,6 +66,7 @@ public static function createProvider(): array ['parser/parseCreateTableEnforcedCheck'], ['parser/parseCreateTableNotEnforcedCheck'], ['parser/parseCreateTableWithInvisibleKey'], + ['parser/parseCreateTableWithParser'], ['parser/parseCreateTrigger'], ['parser/parseCreateUser1'], ['parser/parseCreateUser2'], diff --git a/tests/Parser/KillStatementTest.php b/tests/Parser/KillStatementTest.php new file mode 100644 index 000000000..335c96a20 --- /dev/null +++ b/tests/Parser/KillStatementTest.php @@ -0,0 +1,69 @@ +runParserTest($test); + } + + /** + * @return string[][] + */ + public static function killProvider(): array + { + return [ + ['parser/parseKill'], + ['parser/parseKill2'], + ['parser/parseKill3'], + ['parser/parseKillConnection'], + ['parser/parseKillQuery'], + ['parser/parseKillErr1'], + ['parser/parseKillErr2'], + ['parser/parseKillErr3'], + ['parser/parseKillErr4'], + ]; + } + + /** @dataProvider buildKillProvider */ + public function testBuildKill(string $sql): void + { + $parser = new Parser($sql); + $this->assertCount(1, $parser->statements); + $statement = $parser->statements[0]; + $this->assertInstanceOf(KillStatement::class, $statement); + $builtSql = $statement->build(); + $this->assertEquals($sql, $builtSql); + } + + /** + * @return array> + * @psalm-return list> + */ + public static function buildKillProvider(): array + { + return [ + ['KILL (SELECT 3 + 4)'], + ['KILL QUERY 4'], + ['KILL CONNECTION 5'], + ['KILL 6'], + ['KILL QUERY (SELECT 7)'], + ['KILL SOFT QUERY (SELECT 8)'], + ['KILL HARD 9'], + ['KILL USER 10'], + ['KILL SOFT (SELECT 1)'], + ['KILL (2)'], + ['KILL QUERY ID (2)'], + ['KILL QUERY ID (SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST LIMIT 0, 1)'], + ]; + } +} diff --git a/tests/Parser/UpdateStatementTest.php b/tests/Parser/UpdateStatementTest.php index 7f138b28b..7733ce619 100644 --- a/tests/Parser/UpdateStatementTest.php +++ b/tests/Parser/UpdateStatementTest.php @@ -30,6 +30,7 @@ public static function updateProvider(): array ['parser/parseUpdate6'], ['parser/parseUpdate7'], ['parser/parseUpdateErr'], + ['parser/parseUpdateEmptySet'], ]; } } diff --git a/tests/Tools/ContextGeneratorTest.php b/tests/Tools/ContextGeneratorTest.php index a37e64292..d6d4df266 100644 --- a/tests/Tools/ContextGeneratorTest.php +++ b/tests/Tools/ContextGeneratorTest.php @@ -15,6 +15,9 @@ class ContextGeneratorTest extends TestCase { public function testFormatName(): void { + $name = ContextGenerator::formatName('Invalid00Format00'); + $this->assertEquals('Invalid00Format00', $name); + $name = ContextGenerator::formatName('MySql80000'); $this->assertEquals('MySQL 8.0', $name); @@ -23,15 +26,18 @@ public function testFormatName(): void $name = ContextGenerator::formatName('MariaDb100000'); $this->assertEquals('MariaDB 10.0', $name); + + $name = ContextGenerator::formatName('FutureDBMS45784012500'); + $this->assertEquals('FutureDBMS 4.57.84.1.25', $name); } public function testSortWords(): void { - $wordsArray = ['41' => [['GEOMETRYCOLLECTION', 'DATE']], '35' => [['SCHEMA', 'REPEAT', 'VALUES']]]; + $wordsArray = ['41' => ['GEOMETRYCOLLECTION', 'DATE'], '35' => ['SCHEMA', 'REPEAT', 'VALUES']]; ContextGenerator::sortWords($wordsArray); $this->assertEquals([ - '41' => ['0' => ['DATE', 'GEOMETRYCOLLECTION']], - '35' => ['0' => ['REPEAT', 'SCHEMA', 'VALUES']], + '41' => ['DATE', 'GEOMETRYCOLLECTION'], + '35' => ['REPEAT', 'SCHEMA', 'VALUES'], ], $wordsArray); } @@ -40,15 +46,18 @@ public function testReadWords(): void $testFiles = [getcwd() . '/tests/Tools/contexts/testContext.txt']; $readWords = ContextGenerator::readWords($testFiles); $this->assertEquals([ - Token::TYPE_KEYWORD | Token::FLAG_KEYWORD_RESERVED => [ - 8 => ['RESERVED'], - 9 => ['RESERVED2','RESERVED3','RESERVED4','RESERVED5'], + Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED => [ + 'RESERVED', + 'RESERVED2', + 'RESERVED3', + 'RESERVED4', + 'RESERVED5', ], - Token::TYPE_KEYWORD | Token::FLAG_KEYWORD_FUNCTION => [8 => ['FUNCTION']], - Token::TYPE_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE => [8 => ['DATATYPE']], - Token::TYPE_KEYWORD | Token::FLAG_KEYWORD_KEY => [7 => ['KEYWORD']], - Token::TYPE_KEYWORD => [7 => ['NO_FLAG']], - Token::TYPE_KEYWORD | Token::FLAG_KEYWORD_RESERVED | 4 => [16 => ['COMPOSED KEYWORD']], + Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION => ['FUNCTION'], + Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE => ['DATATYPE'], + Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_KEY => ['KEYWORD'], + Token::FLAG_KEYWORD => ['NO_FLAG'], + Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED => ['COMPOSED KEYWORD'], ], $readWords); } diff --git a/tests/Tools/contexts/testContext.txt b/tests/Tools/contexts/testContext.txt index 9707168c2..e7b107b80 100644 --- a/tests/Tools/contexts/testContext.txt +++ b/tests/Tools/contexts/testContext.txt @@ -1,14 +1,16 @@ RESERVED (R) -RESERVED2 (R) -RESERVED3 (R) -RESERVED4 (R) -RESERVED5 (R) + RESERVED2 (R) + RESERVED3 (R) + RESERVED4 (R) +reserved5 (R) FUNCTION (F) DATATYPE (D) KEYWORD (K) + + NO_FLAG COMPOSED KEYWORD -FUNCTION \ No newline at end of file +FUNCTION diff --git a/tests/Tools/templates/TestContext.php b/tests/Tools/templates/TestContext.php index da9c8fd1c..e357cfe1f 100644 --- a/tests/Tools/templates/TestContext.php +++ b/tests/Tools/templates/TestContext.php @@ -22,25 +22,21 @@ class TestContext extends Context * * The value associated to each keyword represents its flags. * - * @see Token::FLAG_KEYWORD_RESERVED Token::FLAG_KEYWORD_COMPOSED - * Token::FLAG_KEYWORD_DATA_TYPE Token::FLAG_KEYWORD_KEY - * Token::FLAG_KEYWORD_FUNCTION + * @see Token * * @var array * @phpstan-var non-empty-array */ public static $KEYWORDS = [ - 'NO_FLAG' => 1, - - 'RESERVED' => 3, - 'RESERVED2' => 3, 'RESERVED3' => 3, 'RESERVED4' => 3, 'RESERVED5' => 3, - - 'COMPOSED KEYWORD' => 7, - - 'DATATYPE' => 9, - - 'KEYWORD' => 17, - - 'FUNCTION' => 33, + 'NO_FLAG' => Token::FLAG_KEYWORD, + 'RESERVED' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESERVED2' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESERVED3' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESERVED4' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'RESERVED5' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED, + 'COMPOSED KEYWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_RESERVED | Token::FLAG_KEYWORD_COMPOSED, + 'DATATYPE' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_DATA_TYPE, + 'KEYWORD' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_KEY, + 'FUNCTION' => Token::FLAG_KEYWORD | Token::FLAG_KEYWORD_FUNCTION, ]; } diff --git a/tests/Utils/QueryTest.php b/tests/Utils/QueryTest.php index c1a365973..583b67aba 100644 --- a/tests/Utils/QueryTest.php +++ b/tests/Utils/QueryTest.php @@ -181,6 +181,24 @@ public static function getFlagsProvider(): array 'querytype' => 'SELECT', ], ], + [ + 'SELECT count(*) FROM tbl', + [ + 'is_count' => true, + 'is_select' => true, + 'select_from' => true, + 'querytype' => 'SELECT', + ], + ], + [ + 'SELECT sum(*) FROM tbl', + [ + 'is_func' => true, + 'is_select' => true, + 'select_from' => true, + 'querytype' => 'SELECT', + ], + ], [ 'SELECT (SELECT "foo")', [ @@ -600,6 +618,16 @@ public function testReplaceClause(): void 'ORDER BY city' ) ); + + $parser = new Parser('SELECT * FROM `t` FOR UPDATE'); + $this->assertEquals( + 'SELECT * FROM `t` LIMIT 0, 25 FOR UPDATE', + Query::replaceClause( + $parser->statements[0], + $parser->list, + 'LIMIT 0, 25' + ) + ); } public function testReplaceClauseOnlyKeyword(): void diff --git a/tests/benchmarks/UtfStringBench.php b/tests/benchmarks/UtfStringBench.php index eaae4754f..868fe70d1 100644 --- a/tests/benchmarks/UtfStringBench.php +++ b/tests/benchmarks/UtfStringBench.php @@ -20,7 +20,7 @@ class UtfStringBench * @Revs(4) * @OutputTimeUnit("milliseconds") * @Assert("mode(variant.time.avg) < 100 milliseconds +/- 10%") - * @Assert("mode(variant.time.avg) > 30 milliseconds +/- 10%") + * @Assert("mode(variant.time.avg) > 25 milliseconds +/- 10%") */ public function benchBuildUtfString(): void { @@ -36,7 +36,7 @@ public function benchBuildUtfString(): void * @Revs(2) * @OutputTimeUnit("microseconds") * @Assert("mode(variant.time.avg) < 800 microseconds +/- 20%") - * @Assert("mode(variant.time.avg) > 100 microseconds +/- 10%") + * @Assert("mode(variant.time.avg) > 60 microseconds +/- 10%") */ public function benchGetCharLength(): void { diff --git a/tests/data/bugs/gh14.out b/tests/data/bugs/gh14.out index fa6855946..3ae7c8843 100644 --- a/tests/data/bugs/gh14.out +++ b/tests/data/bugs/gh14.out @@ -299,6 +299,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -351,6 +365,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/bugs/gh234.out b/tests/data/bugs/gh234.out index 72b354b7b..d77f55a7a 100644 --- a/tests/data/bugs/gh234.out +++ b/tests/data/bugs/gh234.out @@ -281,6 +281,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/bugs/gh317.out b/tests/data/bugs/gh317.out index 5ad2f715b..92e3d1696 100644 --- a/tests/data/bugs/gh317.out +++ b/tests/data/bugs/gh317.out @@ -191,6 +191,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/bugs/gh478.out b/tests/data/bugs/gh478.out index 8a1231376..a2e44ff80 100644 --- a/tests/data/bugs/gh478.out +++ b/tests/data/bugs/gh478.out @@ -479,6 +479,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -519,6 +533,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -577,6 +605,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/bugs/gh511.out b/tests/data/bugs/gh511.out index 1e40ec581..3d8e2b645 100644 --- a/tests/data/bugs/gh511.out +++ b/tests/data/bugs/gh511.out @@ -542,6 +542,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter.out b/tests/data/parser/parseAlter.out index 253fb39e0..6dcffee9e 100644 --- a/tests/data/parser/parseAlter.out +++ b/tests/data/parser/parseAlter.out @@ -272,6 +272,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -295,6 +309,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter10.out b/tests/data/parser/parseAlter10.out index 31d730ebd..a86ec2c26 100644 --- a/tests/data/parser/parseAlter10.out +++ b/tests/data/parser/parseAlter10.out @@ -236,6 +236,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter11.out b/tests/data/parser/parseAlter11.out index ae526aeee..360060543 100644 --- a/tests/data/parser/parseAlter11.out +++ b/tests/data/parser/parseAlter11.out @@ -272,6 +272,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter12.out b/tests/data/parser/parseAlter12.out index 07d63a57d..f7490ac9e 100644 --- a/tests/data/parser/parseAlter12.out +++ b/tests/data/parser/parseAlter12.out @@ -191,6 +191,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter13.out b/tests/data/parser/parseAlter13.out index f3f2c1f5f..c61d2f9eb 100644 --- a/tests/data/parser/parseAlter13.out +++ b/tests/data/parser/parseAlter13.out @@ -218,6 +218,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter14.out b/tests/data/parser/parseAlter14.out index 4908a1c24..a8eb11499 100644 --- a/tests/data/parser/parseAlter14.out +++ b/tests/data/parser/parseAlter14.out @@ -308,6 +308,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter2.out b/tests/data/parser/parseAlter2.out index 14efa3f49..c640d6b64 100644 --- a/tests/data/parser/parseAlter2.out +++ b/tests/data/parser/parseAlter2.out @@ -290,6 +290,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter3.out b/tests/data/parser/parseAlter3.out index b11efe29d..e7bf7ed7a 100644 --- a/tests/data/parser/parseAlter3.out +++ b/tests/data/parser/parseAlter3.out @@ -470,6 +470,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter4.out b/tests/data/parser/parseAlter4.out index be26a2ef0..03d7b3611 100644 --- a/tests/data/parser/parseAlter4.out +++ b/tests/data/parser/parseAlter4.out @@ -137,6 +137,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter5.out b/tests/data/parser/parseAlter5.out index 06ad7e1ae..c72384a02 100644 --- a/tests/data/parser/parseAlter5.out +++ b/tests/data/parser/parseAlter5.out @@ -146,6 +146,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter6.out b/tests/data/parser/parseAlter6.out index d94cc1b40..2be7476d1 100644 --- a/tests/data/parser/parseAlter6.out +++ b/tests/data/parser/parseAlter6.out @@ -182,6 +182,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter7.out b/tests/data/parser/parseAlter7.out index d75da9626..ad93c32c6 100644 --- a/tests/data/parser/parseAlter7.out +++ b/tests/data/parser/parseAlter7.out @@ -425,6 +425,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -489,6 +503,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter8.out b/tests/data/parser/parseAlter8.out index cce86f85b..fe1257aa5 100644 --- a/tests/data/parser/parseAlter8.out +++ b/tests/data/parser/parseAlter8.out @@ -254,6 +254,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlter9.out b/tests/data/parser/parseAlter9.out index 61cb8f4d0..5dff87aea 100644 --- a/tests/data/parser/parseAlter9.out +++ b/tests/data/parser/parseAlter9.out @@ -308,6 +308,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterErr.out b/tests/data/parser/parseAlterErr.out index 2fabcb5f6..c381a6282 100644 --- a/tests/data/parser/parseAlterErr.out +++ b/tests/data/parser/parseAlterErr.out @@ -434,6 +434,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterErr2.out b/tests/data/parser/parseAlterErr2.out index 3eba0d09f..e2e6c0d14 100644 --- a/tests/data/parser/parseAlterErr2.out +++ b/tests/data/parser/parseAlterErr2.out @@ -380,6 +380,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterErr3.out b/tests/data/parser/parseAlterErr3.out index 9bf2ab56d..62b303c01 100644 --- a/tests/data/parser/parseAlterErr3.out +++ b/tests/data/parser/parseAlterErr3.out @@ -263,6 +263,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterErr4.out b/tests/data/parser/parseAlterErr4.out index e436de2d6..0c27169e3 100644 --- a/tests/data/parser/parseAlterErr4.out +++ b/tests/data/parser/parseAlterErr4.out @@ -191,6 +191,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEvent.out b/tests/data/parser/parseAlterEvent.out index 5fb1336ee..81b5b0ca6 100644 --- a/tests/data/parser/parseAlterEvent.out +++ b/tests/data/parser/parseAlterEvent.out @@ -128,6 +128,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEvent2.out b/tests/data/parser/parseAlterEvent2.out index 93d6f7d04..9e65ef51d 100644 --- a/tests/data/parser/parseAlterEvent2.out +++ b/tests/data/parser/parseAlterEvent2.out @@ -128,6 +128,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEvent3.out b/tests/data/parser/parseAlterEvent3.out index dd8e41565..f24055ad4 100644 --- a/tests/data/parser/parseAlterEvent3.out +++ b/tests/data/parser/parseAlterEvent3.out @@ -128,6 +128,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEvent4.out b/tests/data/parser/parseAlterEvent4.out index ecbb23122..b25e9a527 100644 --- a/tests/data/parser/parseAlterEvent4.out +++ b/tests/data/parser/parseAlterEvent4.out @@ -128,6 +128,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEvent5.out b/tests/data/parser/parseAlterEvent5.out index 51c27a8d8..d7e08d086 100644 --- a/tests/data/parser/parseAlterEvent5.out +++ b/tests/data/parser/parseAlterEvent5.out @@ -128,6 +128,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEvent6.out b/tests/data/parser/parseAlterEvent6.out index 5f343b67e..573e7c92a 100644 --- a/tests/data/parser/parseAlterEvent6.out +++ b/tests/data/parser/parseAlterEvent6.out @@ -164,6 +164,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEvent7.out b/tests/data/parser/parseAlterEvent7.out index de9aeea16..c62421b08 100644 --- a/tests/data/parser/parseAlterEvent7.out +++ b/tests/data/parser/parseAlterEvent7.out @@ -146,6 +146,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEvent8.out b/tests/data/parser/parseAlterEvent8.out index e5f6b4800..e0407e292 100644 --- a/tests/data/parser/parseAlterEvent8.out +++ b/tests/data/parser/parseAlterEvent8.out @@ -200,6 +200,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEvent9.out b/tests/data/parser/parseAlterEvent9.out index 7d93b6a4c..82d66cf47 100644 --- a/tests/data/parser/parseAlterEvent9.out +++ b/tests/data/parser/parseAlterEvent9.out @@ -353,6 +353,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -403,6 +417,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEventComplete.out b/tests/data/parser/parseAlterEventComplete.out index 81731be64..d32c38f20 100644 --- a/tests/data/parser/parseAlterEventComplete.out +++ b/tests/data/parser/parseAlterEventComplete.out @@ -614,6 +614,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEventOnScheduleAt.out b/tests/data/parser/parseAlterEventOnScheduleAt.out index 090d1abe0..09d519a4d 100644 --- a/tests/data/parser/parseAlterEventOnScheduleAt.out +++ b/tests/data/parser/parseAlterEventOnScheduleAt.out @@ -164,6 +164,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEventOnScheduleAt2.out b/tests/data/parser/parseAlterEventOnScheduleAt2.out index fb24b57ec..a98a1f384 100644 --- a/tests/data/parser/parseAlterEventOnScheduleAt2.out +++ b/tests/data/parser/parseAlterEventOnScheduleAt2.out @@ -236,6 +236,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEventOnScheduleEvery.out b/tests/data/parser/parseAlterEventOnScheduleEvery.out index eefcc5275..b9f8720a4 100644 --- a/tests/data/parser/parseAlterEventOnScheduleEvery.out +++ b/tests/data/parser/parseAlterEventOnScheduleEvery.out @@ -182,6 +182,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEventOnScheduleEvery2.out b/tests/data/parser/parseAlterEventOnScheduleEvery2.out index 4d6d636d9..a329d3174 100644 --- a/tests/data/parser/parseAlterEventOnScheduleEvery2.out +++ b/tests/data/parser/parseAlterEventOnScheduleEvery2.out @@ -254,6 +254,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEventOnScheduleEvery3.out b/tests/data/parser/parseAlterEventOnScheduleEvery3.out index b8f7851b3..9615edf0d 100644 --- a/tests/data/parser/parseAlterEventOnScheduleEvery3.out +++ b/tests/data/parser/parseAlterEventOnScheduleEvery3.out @@ -218,6 +218,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEventOnScheduleEvery4.out b/tests/data/parser/parseAlterEventOnScheduleEvery4.out index 24f57fdce..3b82a378a 100644 --- a/tests/data/parser/parseAlterEventOnScheduleEvery4.out +++ b/tests/data/parser/parseAlterEventOnScheduleEvery4.out @@ -290,6 +290,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEventOnScheduleEvery5.out b/tests/data/parser/parseAlterEventOnScheduleEvery5.out index 60cb68a2d..c6c1575a6 100644 --- a/tests/data/parser/parseAlterEventOnScheduleEvery5.out +++ b/tests/data/parser/parseAlterEventOnScheduleEvery5.out @@ -254,6 +254,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEventOnScheduleEvery6.out b/tests/data/parser/parseAlterEventOnScheduleEvery6.out index a6ba67e15..fdf2af7ae 100644 --- a/tests/data/parser/parseAlterEventOnScheduleEvery6.out +++ b/tests/data/parser/parseAlterEventOnScheduleEvery6.out @@ -326,6 +326,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEventWithDefiner.out b/tests/data/parser/parseAlterEventWithDefiner.out index e6f96cd57..5045820c8 100644 --- a/tests/data/parser/parseAlterEventWithDefiner.out +++ b/tests/data/parser/parseAlterEventWithDefiner.out @@ -182,6 +182,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterEventWithOtherDefiners.out b/tests/data/parser/parseAlterEventWithOtherDefiners.out index ae23328c7..bfb52198e 100644 --- a/tests/data/parser/parseAlterEventWithOtherDefiners.out +++ b/tests/data/parser/parseAlterEventWithOtherDefiners.out @@ -731,6 +731,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -781,6 +795,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -831,6 +859,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -881,6 +923,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -931,6 +987,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterFunction1.in b/tests/data/parser/parseAlterFunction1.in new file mode 100644 index 000000000..22ca89786 --- /dev/null +++ b/tests/data/parser/parseAlterFunction1.in @@ -0,0 +1 @@ +ALTER FUNCTION func_name COMMENT "test"; diff --git a/tests/data/parser/parseAlterFunction1.out b/tests/data/parser/parseAlterFunction1.out new file mode 100644 index 000000000..73b98858f --- /dev/null +++ b/tests/data/parser/parseAlterFunction1.out @@ -0,0 +1,197 @@ +{ + "query": "ALTER FUNCTION func_name COMMENT \"test\";\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER FUNCTION func_name COMMENT \"test\";\n", + "len": 41, + "last": 41, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "FUNCTION", + "value": "FUNCTION", + "keyword": "FUNCTION", + "type": 1, + "flags": 1, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 14 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "func_name", + "value": "func_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 24 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "COMMENT", + "value": "COMMENT", + "keyword": "COMMENT", + "type": 1, + "flags": 1, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 32 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\"test\"", + "value": "test", + "keyword": null, + "type": 7, + "flags": 2, + "position": 33 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 39 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 40 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 12, + "idx": 12 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "func_name", + "column": null, + "expr": "func_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": { + "name": "COMMENT", + "equals": false, + "expr": "\"test\"", + "value": "test" + } + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "FUNCTION" + } + }, + "first": 0, + "last": 9 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterFunction2.in b/tests/data/parser/parseAlterFunction2.in new file mode 100644 index 000000000..ae0231ed6 --- /dev/null +++ b/tests/data/parser/parseAlterFunction2.in @@ -0,0 +1 @@ +ALTER FUNCTION func_name LANGUAGE SQL; diff --git a/tests/data/parser/parseAlterFunction2.out b/tests/data/parser/parseAlterFunction2.out new file mode 100644 index 000000000..ae8675e2e --- /dev/null +++ b/tests/data/parser/parseAlterFunction2.out @@ -0,0 +1,174 @@ +{ + "query": "ALTER FUNCTION func_name LANGUAGE SQL;\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER FUNCTION func_name LANGUAGE SQL;\n", + "len": 39, + "last": 39, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "FUNCTION", + "value": "FUNCTION", + "keyword": "FUNCTION", + "type": 1, + "flags": 1, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 14 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "func_name", + "value": "func_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 24 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "LANGUAGE SQL", + "value": "LANGUAGE SQL", + "keyword": "LANGUAGE SQL", + "type": 1, + "flags": 7, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 37 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 38 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 10, + "idx": 10 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "func_name", + "column": null, + "expr": "func_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "2": "LANGUAGE SQL" + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "FUNCTION" + } + }, + "first": 0, + "last": 7 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterFunction3.in b/tests/data/parser/parseAlterFunction3.in new file mode 100644 index 000000000..9d1bbebc8 --- /dev/null +++ b/tests/data/parser/parseAlterFunction3.in @@ -0,0 +1 @@ +ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER; diff --git a/tests/data/parser/parseAlterFunction3.out b/tests/data/parser/parseAlterFunction3.out new file mode 100644 index 000000000..e7b3c27cc --- /dev/null +++ b/tests/data/parser/parseAlterFunction3.out @@ -0,0 +1,273 @@ +{ + "query": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER;\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER;\n", + "len": 88, + "last": 88, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "FUNCTION", + "value": "FUNCTION", + "keyword": "FUNCTION", + "type": 1, + "flags": 1, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 14 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "func_name", + "value": "func_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 24 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "COMMENT", + "value": "COMMENT", + "keyword": "COMMENT", + "type": 1, + "flags": 1, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 32 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\"test\"", + "value": "test", + "keyword": null, + "type": 7, + "flags": 2, + "position": 33 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 39 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "LANGUAGE SQL", + "value": "LANGUAGE SQL", + "keyword": "LANGUAGE SQL", + "type": 1, + "flags": 7, + "position": 40 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 52 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "CONTAINS SQL", + "value": "CONTAINS SQL", + "keyword": "CONTAINS SQL", + "type": 1, + "flags": 7, + "position": 53 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 65 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SQL SECURITY", + "value": "SQL SECURITY", + "keyword": "SQL SECURITY", + "type": 1, + "flags": 7, + "position": 66 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 78 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "DEFINER", + "value": "DEFINER", + "keyword": "DEFINER", + "type": 1, + "flags": 1, + "position": 79 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 86 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 87 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 20, + "idx": 20 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "func_name", + "column": null, + "expr": "func_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": { + "name": "COMMENT", + "equals": false, + "expr": "\"test\"", + "value": "test" + }, + "2": "LANGUAGE SQL", + "3": "CONTAINS SQL", + "4": "SQL SECURITY", + "5": "DEFINER" + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "FUNCTION" + } + }, + "first": 0, + "last": 17 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterFunction4.in b/tests/data/parser/parseAlterFunction4.in new file mode 100644 index 000000000..5e40da74b --- /dev/null +++ b/tests/data/parser/parseAlterFunction4.in @@ -0,0 +1 @@ +ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL NO SQL SQL SECURITY INVOKER; diff --git a/tests/data/parser/parseAlterFunction4.out b/tests/data/parser/parseAlterFunction4.out new file mode 100644 index 000000000..e6debf311 --- /dev/null +++ b/tests/data/parser/parseAlterFunction4.out @@ -0,0 +1,273 @@ +{ + "query": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL NO SQL SQL SECURITY INVOKER;\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL NO SQL SQL SECURITY INVOKER;\n", + "len": 82, + "last": 82, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "FUNCTION", + "value": "FUNCTION", + "keyword": "FUNCTION", + "type": 1, + "flags": 1, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 14 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "func_name", + "value": "func_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 24 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "COMMENT", + "value": "COMMENT", + "keyword": "COMMENT", + "type": 1, + "flags": 1, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 32 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\"test\"", + "value": "test", + "keyword": null, + "type": 7, + "flags": 2, + "position": 33 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 39 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "LANGUAGE SQL", + "value": "LANGUAGE SQL", + "keyword": "LANGUAGE SQL", + "type": 1, + "flags": 7, + "position": 40 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 52 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "NO SQL", + "value": "NO SQL", + "keyword": "NO SQL", + "type": 1, + "flags": 7, + "position": 53 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 59 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SQL SECURITY", + "value": "SQL SECURITY", + "keyword": "SQL SECURITY", + "type": 1, + "flags": 7, + "position": 60 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 72 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "INVOKER", + "value": "INVOKER", + "keyword": "INVOKER", + "type": 1, + "flags": 1, + "position": 73 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 80 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 81 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 20, + "idx": 20 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "func_name", + "column": null, + "expr": "func_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": { + "name": "COMMENT", + "equals": false, + "expr": "\"test\"", + "value": "test" + }, + "2": "LANGUAGE SQL", + "3": "NO SQL", + "4": "SQL SECURITY", + "5": "INVOKER" + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "FUNCTION" + } + }, + "first": 0, + "last": 17 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterFunction5.in b/tests/data/parser/parseAlterFunction5.in new file mode 100644 index 000000000..818245903 --- /dev/null +++ b/tests/data/parser/parseAlterFunction5.in @@ -0,0 +1 @@ +ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL READS SQL DATA; diff --git a/tests/data/parser/parseAlterFunction5.out b/tests/data/parser/parseAlterFunction5.out new file mode 100644 index 000000000..4020c4f28 --- /dev/null +++ b/tests/data/parser/parseAlterFunction5.out @@ -0,0 +1,235 @@ +{ + "query": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL READS SQL DATA;\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL READS SQL DATA;\n", + "len": 69, + "last": 69, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "FUNCTION", + "value": "FUNCTION", + "keyword": "FUNCTION", + "type": 1, + "flags": 1, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 14 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "func_name", + "value": "func_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 24 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "COMMENT", + "value": "COMMENT", + "keyword": "COMMENT", + "type": 1, + "flags": 1, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 32 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\"test\"", + "value": "test", + "keyword": null, + "type": 7, + "flags": 2, + "position": 33 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 39 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "LANGUAGE SQL", + "value": "LANGUAGE SQL", + "keyword": "LANGUAGE SQL", + "type": 1, + "flags": 7, + "position": 40 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 52 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "READS SQL DATA", + "value": "READS SQL DATA", + "keyword": "READS SQL DATA", + "type": 1, + "flags": 7, + "position": 53 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 67 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 68 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 16, + "idx": 16 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "func_name", + "column": null, + "expr": "func_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": { + "name": "COMMENT", + "equals": false, + "expr": "\"test\"", + "value": "test" + }, + "2": "LANGUAGE SQL", + "3": "READS SQL DATA" + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "FUNCTION" + } + }, + "first": 0, + "last": 13 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterFunction6.in b/tests/data/parser/parseAlterFunction6.in new file mode 100644 index 000000000..8ccff1ade --- /dev/null +++ b/tests/data/parser/parseAlterFunction6.in @@ -0,0 +1 @@ +ALTER FUNCTION func_name COMMENT "test" LANGUAGE SQL MODIFIES SQL DATA; diff --git a/tests/data/parser/parseAlterFunction6.out b/tests/data/parser/parseAlterFunction6.out new file mode 100644 index 000000000..c38b3d9c6 --- /dev/null +++ b/tests/data/parser/parseAlterFunction6.out @@ -0,0 +1,235 @@ +{ + "query": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL MODIFIES SQL DATA;\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER FUNCTION func_name COMMENT \"test\" LANGUAGE SQL MODIFIES SQL DATA;\n", + "len": 72, + "last": 72, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "FUNCTION", + "value": "FUNCTION", + "keyword": "FUNCTION", + "type": 1, + "flags": 1, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 14 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "func_name", + "value": "func_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 24 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "COMMENT", + "value": "COMMENT", + "keyword": "COMMENT", + "type": 1, + "flags": 1, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 32 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\"test\"", + "value": "test", + "keyword": null, + "type": 7, + "flags": 2, + "position": 33 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 39 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "LANGUAGE SQL", + "value": "LANGUAGE SQL", + "keyword": "LANGUAGE SQL", + "type": 1, + "flags": 7, + "position": 40 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 52 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "MODIFIES SQL DATA", + "value": "MODIFIES SQL DATA", + "keyword": "MODIFIES SQL DATA", + "type": 1, + "flags": 7, + "position": 53 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 70 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 71 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 16, + "idx": 16 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "func_name", + "column": null, + "expr": "func_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": { + "name": "COMMENT", + "equals": false, + "expr": "\"test\"", + "value": "test" + }, + "2": "LANGUAGE SQL", + "3": "MODIFIES SQL DATA" + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "FUNCTION" + } + }, + "first": 0, + "last": 13 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterProcedure1.in b/tests/data/parser/parseAlterProcedure1.in new file mode 100644 index 000000000..f3d1bec3d --- /dev/null +++ b/tests/data/parser/parseAlterProcedure1.in @@ -0,0 +1 @@ +ALTER PROCEDURE proc_name COMMENT "test"; diff --git a/tests/data/parser/parseAlterProcedure1.out b/tests/data/parser/parseAlterProcedure1.out new file mode 100644 index 000000000..ecc35499d --- /dev/null +++ b/tests/data/parser/parseAlterProcedure1.out @@ -0,0 +1,197 @@ +{ + "query": "ALTER PROCEDURE proc_name COMMENT \"test\";\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER PROCEDURE proc_name COMMENT \"test\";\n", + "len": 42, + "last": 42, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "PROCEDURE", + "value": "PROCEDURE", + "keyword": "PROCEDURE", + "type": 1, + "flags": 3, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "proc_name", + "value": "proc_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 16 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "COMMENT", + "value": "COMMENT", + "keyword": "COMMENT", + "type": 1, + "flags": 1, + "position": 26 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 33 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\"test\"", + "value": "test", + "keyword": null, + "type": 7, + "flags": 2, + "position": 34 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 40 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 41 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 12, + "idx": 12 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "proc_name", + "column": null, + "expr": "proc_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": { + "name": "COMMENT", + "equals": false, + "expr": "\"test\"", + "value": "test" + } + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "PROCEDURE" + } + }, + "first": 0, + "last": 9 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterProcedure2.in b/tests/data/parser/parseAlterProcedure2.in new file mode 100644 index 000000000..21dc117bc --- /dev/null +++ b/tests/data/parser/parseAlterProcedure2.in @@ -0,0 +1 @@ +ALTER PROCEDURE proc_name LANGUAGE SQL; diff --git a/tests/data/parser/parseAlterProcedure2.out b/tests/data/parser/parseAlterProcedure2.out new file mode 100644 index 000000000..388133af2 --- /dev/null +++ b/tests/data/parser/parseAlterProcedure2.out @@ -0,0 +1,174 @@ +{ + "query": "ALTER PROCEDURE proc_name LANGUAGE SQL;\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER PROCEDURE proc_name LANGUAGE SQL;\n", + "len": 40, + "last": 40, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "PROCEDURE", + "value": "PROCEDURE", + "keyword": "PROCEDURE", + "type": 1, + "flags": 3, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "proc_name", + "value": "proc_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 16 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "LANGUAGE SQL", + "value": "LANGUAGE SQL", + "keyword": "LANGUAGE SQL", + "type": 1, + "flags": 7, + "position": 26 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 38 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 39 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 10, + "idx": 10 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "proc_name", + "column": null, + "expr": "proc_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "2": "LANGUAGE SQL" + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "PROCEDURE" + } + }, + "first": 0, + "last": 7 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterProcedure3.in b/tests/data/parser/parseAlterProcedure3.in new file mode 100644 index 000000000..9e26dc1ee --- /dev/null +++ b/tests/data/parser/parseAlterProcedure3.in @@ -0,0 +1 @@ +ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER; diff --git a/tests/data/parser/parseAlterProcedure3.out b/tests/data/parser/parseAlterProcedure3.out new file mode 100644 index 000000000..7d84f00a3 --- /dev/null +++ b/tests/data/parser/parseAlterProcedure3.out @@ -0,0 +1,273 @@ +{ + "query": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER;\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL CONTAINS SQL SQL SECURITY DEFINER;\n", + "len": 89, + "last": 89, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "PROCEDURE", + "value": "PROCEDURE", + "keyword": "PROCEDURE", + "type": 1, + "flags": 3, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "proc_name", + "value": "proc_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 16 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "COMMENT", + "value": "COMMENT", + "keyword": "COMMENT", + "type": 1, + "flags": 1, + "position": 26 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 33 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\"test\"", + "value": "test", + "keyword": null, + "type": 7, + "flags": 2, + "position": 34 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 40 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "LANGUAGE SQL", + "value": "LANGUAGE SQL", + "keyword": "LANGUAGE SQL", + "type": 1, + "flags": 7, + "position": 41 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 53 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "CONTAINS SQL", + "value": "CONTAINS SQL", + "keyword": "CONTAINS SQL", + "type": 1, + "flags": 7, + "position": 54 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 66 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SQL SECURITY", + "value": "SQL SECURITY", + "keyword": "SQL SECURITY", + "type": 1, + "flags": 7, + "position": 67 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 79 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "DEFINER", + "value": "DEFINER", + "keyword": "DEFINER", + "type": 1, + "flags": 1, + "position": 80 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 87 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 88 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 20, + "idx": 20 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "proc_name", + "column": null, + "expr": "proc_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": { + "name": "COMMENT", + "equals": false, + "expr": "\"test\"", + "value": "test" + }, + "2": "LANGUAGE SQL", + "3": "CONTAINS SQL", + "4": "SQL SECURITY", + "5": "DEFINER" + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "PROCEDURE" + } + }, + "first": 0, + "last": 17 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterProcedure4.in b/tests/data/parser/parseAlterProcedure4.in new file mode 100644 index 000000000..08d51a2da --- /dev/null +++ b/tests/data/parser/parseAlterProcedure4.in @@ -0,0 +1 @@ +ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL NO SQL SQL SECURITY INVOKER; diff --git a/tests/data/parser/parseAlterProcedure4.out b/tests/data/parser/parseAlterProcedure4.out new file mode 100644 index 000000000..4d735a51f --- /dev/null +++ b/tests/data/parser/parseAlterProcedure4.out @@ -0,0 +1,273 @@ +{ + "query": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL NO SQL SQL SECURITY INVOKER;\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL NO SQL SQL SECURITY INVOKER;\n", + "len": 83, + "last": 83, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "PROCEDURE", + "value": "PROCEDURE", + "keyword": "PROCEDURE", + "type": 1, + "flags": 3, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "proc_name", + "value": "proc_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 16 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "COMMENT", + "value": "COMMENT", + "keyword": "COMMENT", + "type": 1, + "flags": 1, + "position": 26 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 33 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\"test\"", + "value": "test", + "keyword": null, + "type": 7, + "flags": 2, + "position": 34 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 40 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "LANGUAGE SQL", + "value": "LANGUAGE SQL", + "keyword": "LANGUAGE SQL", + "type": 1, + "flags": 7, + "position": 41 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 53 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "NO SQL", + "value": "NO SQL", + "keyword": "NO SQL", + "type": 1, + "flags": 7, + "position": 54 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 60 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SQL SECURITY", + "value": "SQL SECURITY", + "keyword": "SQL SECURITY", + "type": 1, + "flags": 7, + "position": 61 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 73 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "INVOKER", + "value": "INVOKER", + "keyword": "INVOKER", + "type": 1, + "flags": 1, + "position": 74 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 81 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 82 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 20, + "idx": 20 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "proc_name", + "column": null, + "expr": "proc_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": { + "name": "COMMENT", + "equals": false, + "expr": "\"test\"", + "value": "test" + }, + "2": "LANGUAGE SQL", + "3": "NO SQL", + "4": "SQL SECURITY", + "5": "INVOKER" + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "PROCEDURE" + } + }, + "first": 0, + "last": 17 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterProcedure5.in b/tests/data/parser/parseAlterProcedure5.in new file mode 100644 index 000000000..a792e05f9 --- /dev/null +++ b/tests/data/parser/parseAlterProcedure5.in @@ -0,0 +1 @@ +ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL READS SQL DATA; diff --git a/tests/data/parser/parseAlterProcedure5.out b/tests/data/parser/parseAlterProcedure5.out new file mode 100644 index 000000000..d0aee9a4c --- /dev/null +++ b/tests/data/parser/parseAlterProcedure5.out @@ -0,0 +1,235 @@ +{ + "query": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL READS SQL DATA;\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL READS SQL DATA;\n", + "len": 70, + "last": 70, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "PROCEDURE", + "value": "PROCEDURE", + "keyword": "PROCEDURE", + "type": 1, + "flags": 3, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "proc_name", + "value": "proc_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 16 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "COMMENT", + "value": "COMMENT", + "keyword": "COMMENT", + "type": 1, + "flags": 1, + "position": 26 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 33 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\"test\"", + "value": "test", + "keyword": null, + "type": 7, + "flags": 2, + "position": 34 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 40 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "LANGUAGE SQL", + "value": "LANGUAGE SQL", + "keyword": "LANGUAGE SQL", + "type": 1, + "flags": 7, + "position": 41 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 53 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "READS SQL DATA", + "value": "READS SQL DATA", + "keyword": "READS SQL DATA", + "type": 1, + "flags": 7, + "position": 54 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 68 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 69 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 16, + "idx": 16 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "proc_name", + "column": null, + "expr": "proc_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": { + "name": "COMMENT", + "equals": false, + "expr": "\"test\"", + "value": "test" + }, + "2": "LANGUAGE SQL", + "3": "READS SQL DATA" + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "PROCEDURE" + } + }, + "first": 0, + "last": 13 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterProcedure6.in b/tests/data/parser/parseAlterProcedure6.in new file mode 100644 index 000000000..44e033d65 --- /dev/null +++ b/tests/data/parser/parseAlterProcedure6.in @@ -0,0 +1 @@ +ALTER PROCEDURE proc_name COMMENT "test" LANGUAGE SQL MODIFIES SQL DATA; diff --git a/tests/data/parser/parseAlterProcedure6.out b/tests/data/parser/parseAlterProcedure6.out new file mode 100644 index 000000000..4fa177fb5 --- /dev/null +++ b/tests/data/parser/parseAlterProcedure6.out @@ -0,0 +1,235 @@ +{ + "query": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL MODIFIES SQL DATA;\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "ALTER PROCEDURE proc_name COMMENT \"test\" LANGUAGE SQL MODIFIES SQL DATA;\n", + "len": 73, + "last": 73, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ALTER", + "value": "ALTER", + "keyword": "ALTER", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "PROCEDURE", + "value": "PROCEDURE", + "keyword": "PROCEDURE", + "type": 1, + "flags": 3, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "proc_name", + "value": "proc_name", + "keyword": null, + "type": 0, + "flags": 0, + "position": 16 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "COMMENT", + "value": "COMMENT", + "keyword": "COMMENT", + "type": 1, + "flags": 1, + "position": 26 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 33 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\"test\"", + "value": "test", + "keyword": null, + "type": 7, + "flags": 2, + "position": 34 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 40 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "LANGUAGE SQL", + "value": "LANGUAGE SQL", + "keyword": "LANGUAGE SQL", + "type": 1, + "flags": 7, + "position": 41 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 53 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "MODIFIES SQL DATA", + "value": "MODIFIES SQL DATA", + "keyword": "MODIFIES SQL DATA", + "type": 1, + "flags": 7, + "position": 54 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 71 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 72 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 16, + "idx": 16 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\AlterStatement", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "proc_name", + "column": null, + "expr": "proc_name", + "alias": null, + "function": null, + "subquery": null + }, + "altered": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": { + "name": "COMMENT", + "equals": false, + "expr": "\"test\"", + "value": "test" + }, + "2": "LANGUAGE SQL", + "3": "MODIFIES SQL DATA" + } + }, + "field": null, + "partitions": null, + "unknown": [] + } + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": "PROCEDURE" + } + }, + "first": 0, + "last": 13 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseAlterRenameColumn.out b/tests/data/parser/parseAlterRenameColumn.out index 9023381cb..2286807d9 100644 --- a/tests/data/parser/parseAlterRenameColumn.out +++ b/tests/data/parser/parseAlterRenameColumn.out @@ -200,6 +200,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": [ diff --git a/tests/data/parser/parseAlterRenameColumns.out b/tests/data/parser/parseAlterRenameColumns.out index bd12e0e7a..7ad0662d0 100644 --- a/tests/data/parser/parseAlterRenameColumns.out +++ b/tests/data/parser/parseAlterRenameColumns.out @@ -497,6 +497,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": [ @@ -525,6 +539,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": [ @@ -553,6 +581,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": [ @@ -581,6 +623,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": [ diff --git a/tests/data/parser/parseAlterTableAddColumnWithCheck.out b/tests/data/parser/parseAlterTableAddColumnWithCheck.out index 06e210c2e..ea3f1061a 100644 --- a/tests/data/parser/parseAlterTableAddColumnWithCheck.out +++ b/tests/data/parser/parseAlterTableAddColumnWithCheck.out @@ -326,6 +326,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableAddSpatialIndex1.out b/tests/data/parser/parseAlterTableAddSpatialIndex1.out index 3e656977d..f6d7c4493 100644 --- a/tests/data/parser/parseAlterTableAddSpatialIndex1.out +++ b/tests/data/parser/parseAlterTableAddSpatialIndex1.out @@ -254,6 +254,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -279,6 +293,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -296,6 +324,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableCharacterSet1.out b/tests/data/parser/parseAlterTableCharacterSet1.out index c0228568b..81fc20122 100644 --- a/tests/data/parser/parseAlterTableCharacterSet1.out +++ b/tests/data/parser/parseAlterTableCharacterSet1.out @@ -182,6 +182,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableCharacterSet2.out b/tests/data/parser/parseAlterTableCharacterSet2.out index 2594f5952..72202685a 100644 --- a/tests/data/parser/parseAlterTableCharacterSet2.out +++ b/tests/data/parser/parseAlterTableCharacterSet2.out @@ -137,6 +137,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableCharacterSet3.out b/tests/data/parser/parseAlterTableCharacterSet3.out index d9eb60aa7..ee4f6fe92 100644 --- a/tests/data/parser/parseAlterTableCharacterSet3.out +++ b/tests/data/parser/parseAlterTableCharacterSet3.out @@ -146,6 +146,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableCharacterSet4.out b/tests/data/parser/parseAlterTableCharacterSet4.out index 27ef698eb..d3f21c890 100644 --- a/tests/data/parser/parseAlterTableCharacterSet4.out +++ b/tests/data/parser/parseAlterTableCharacterSet4.out @@ -182,6 +182,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableCharacterSet5.out b/tests/data/parser/parseAlterTableCharacterSet5.out index 0d43e3e20..782264919 100644 --- a/tests/data/parser/parseAlterTableCharacterSet5.out +++ b/tests/data/parser/parseAlterTableCharacterSet5.out @@ -146,6 +146,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableCharacterSet6.out b/tests/data/parser/parseAlterTableCharacterSet6.out index f54e8f2d7..701b70a79 100644 --- a/tests/data/parser/parseAlterTableCharacterSet6.out +++ b/tests/data/parser/parseAlterTableCharacterSet6.out @@ -182,6 +182,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableCharacterSet7.out b/tests/data/parser/parseAlterTableCharacterSet7.out index 355d03de5..5cf321f61 100644 --- a/tests/data/parser/parseAlterTableCharacterSet7.out +++ b/tests/data/parser/parseAlterTableCharacterSet7.out @@ -182,6 +182,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableCoalescePartition.out b/tests/data/parser/parseAlterTableCoalescePartition.out index 36652a2d5..711f5627c 100644 --- a/tests/data/parser/parseAlterTableCoalescePartition.out +++ b/tests/data/parser/parseAlterTableCoalescePartition.out @@ -137,6 +137,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableDropAddIndex1.out b/tests/data/parser/parseAlterTableDropAddIndex1.out index 7ad028184..7d20103b9 100644 --- a/tests/data/parser/parseAlterTableDropAddIndex1.out +++ b/tests/data/parser/parseAlterTableDropAddIndex1.out @@ -362,6 +362,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -380,6 +394,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -429,6 +457,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableDropColumn1.out b/tests/data/parser/parseAlterTableDropColumn1.out index 2de475b94..42905c9fd 100644 --- a/tests/data/parser/parseAlterTableDropColumn1.out +++ b/tests/data/parser/parseAlterTableDropColumn1.out @@ -245,6 +245,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -267,6 +281,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -284,6 +312,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableModifyColumn.out b/tests/data/parser/parseAlterTableModifyColumn.out index 953ff4676..6e60c20a2 100644 --- a/tests/data/parser/parseAlterTableModifyColumn.out +++ b/tests/data/parser/parseAlterTableModifyColumn.out @@ -308,6 +308,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -349,6 +363,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -366,6 +394,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableModifyColumnEnum1.out b/tests/data/parser/parseAlterTableModifyColumnEnum1.out index bea3b0889..c8063d327 100644 --- a/tests/data/parser/parseAlterTableModifyColumnEnum1.out +++ b/tests/data/parser/parseAlterTableModifyColumnEnum1.out @@ -227,6 +227,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableModifyColumnEnum2.out b/tests/data/parser/parseAlterTableModifyColumnEnum2.out index 131b09883..df8fe096c 100644 --- a/tests/data/parser/parseAlterTableModifyColumnEnum2.out +++ b/tests/data/parser/parseAlterTableModifyColumnEnum2.out @@ -227,6 +227,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableModifyColumnEnum3.out b/tests/data/parser/parseAlterTableModifyColumnEnum3.out index 0ef022299..bfc42e1e5 100644 --- a/tests/data/parser/parseAlterTableModifyColumnEnum3.out +++ b/tests/data/parser/parseAlterTableModifyColumnEnum3.out @@ -227,6 +227,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTablePartitionByRange1.out b/tests/data/parser/parseAlterTablePartitionByRange1.out index b835b3e8e..25d676b16 100644 --- a/tests/data/parser/parseAlterTablePartitionByRange1.out +++ b/tests/data/parser/parseAlterTablePartitionByRange1.out @@ -1730,6 +1730,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTablePartitionByRange2.out b/tests/data/parser/parseAlterTablePartitionByRange2.out index 549f26d8e..858ecfd64 100644 --- a/tests/data/parser/parseAlterTablePartitionByRange2.out +++ b/tests/data/parser/parseAlterTablePartitionByRange2.out @@ -461,6 +461,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableRenameIndex1.out b/tests/data/parser/parseAlterTableRenameIndex1.out index d3e1c9638..5782ca894 100644 --- a/tests/data/parser/parseAlterTableRenameIndex1.out +++ b/tests/data/parser/parseAlterTableRenameIndex1.out @@ -182,6 +182,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableRenameIndex2.out b/tests/data/parser/parseAlterTableRenameIndex2.out index 481a98d2a..ae2d9710b 100644 --- a/tests/data/parser/parseAlterTableRenameIndex2.out +++ b/tests/data/parser/parseAlterTableRenameIndex2.out @@ -281,6 +281,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -305,6 +319,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -322,6 +350,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterTableSetAutoIncrementError.out b/tests/data/parser/parseAlterTableSetAutoIncrementError.out index d02a97d4f..b68ed3d41 100644 --- a/tests/data/parser/parseAlterTableSetAutoIncrementError.out +++ b/tests/data/parser/parseAlterTableSetAutoIncrementError.out @@ -119,6 +119,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterUser.out b/tests/data/parser/parseAlterUser.out index c4b53a649..8215f41bd 100644 --- a/tests/data/parser/parseAlterUser.out +++ b/tests/data/parser/parseAlterUser.out @@ -191,6 +191,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterUser1.out b/tests/data/parser/parseAlterUser1.out index 884bfdc32..d92613d0c 100644 --- a/tests/data/parser/parseAlterUser1.out +++ b/tests/data/parser/parseAlterUser1.out @@ -137,6 +137,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterUser10.out b/tests/data/parser/parseAlterUser10.out index 8502efbb8..7f0d67912 100644 --- a/tests/data/parser/parseAlterUser10.out +++ b/tests/data/parser/parseAlterUser10.out @@ -209,6 +209,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterUser2.out b/tests/data/parser/parseAlterUser2.out index 4e1c9b165..60ffc29f8 100644 --- a/tests/data/parser/parseAlterUser2.out +++ b/tests/data/parser/parseAlterUser2.out @@ -137,6 +137,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterUser3.out b/tests/data/parser/parseAlterUser3.out index b0c168996..a11488a8d 100644 --- a/tests/data/parser/parseAlterUser3.out +++ b/tests/data/parser/parseAlterUser3.out @@ -191,6 +191,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterUser4.out b/tests/data/parser/parseAlterUser4.out index 20656f509..724f57785 100644 --- a/tests/data/parser/parseAlterUser4.out +++ b/tests/data/parser/parseAlterUser4.out @@ -191,6 +191,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterUser5.out b/tests/data/parser/parseAlterUser5.out index c0b27db3b..d107d0612 100644 --- a/tests/data/parser/parseAlterUser5.out +++ b/tests/data/parser/parseAlterUser5.out @@ -146,6 +146,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterUser6.out b/tests/data/parser/parseAlterUser6.out index 5eda77d1c..8cb639706 100644 --- a/tests/data/parser/parseAlterUser6.out +++ b/tests/data/parser/parseAlterUser6.out @@ -137,6 +137,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterUser7.out b/tests/data/parser/parseAlterUser7.out index d339600db..7941a37da 100644 --- a/tests/data/parser/parseAlterUser7.out +++ b/tests/data/parser/parseAlterUser7.out @@ -191,6 +191,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterUser8.out b/tests/data/parser/parseAlterUser8.out index a0081321b..5c4548e6f 100644 --- a/tests/data/parser/parseAlterUser8.out +++ b/tests/data/parser/parseAlterUser8.out @@ -128,6 +128,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterUser9.out b/tests/data/parser/parseAlterUser9.out index 65b03f27a..beb8feaae 100644 --- a/tests/data/parser/parseAlterUser9.out +++ b/tests/data/parser/parseAlterUser9.out @@ -227,6 +227,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseAlterWithInvisible.out b/tests/data/parser/parseAlterWithInvisible.out index 07fc9dfbe..fe385a307 100644 --- a/tests/data/parser/parseAlterWithInvisible.out +++ b/tests/data/parser/parseAlterWithInvisible.out @@ -362,6 +362,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -393,6 +407,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -418,6 +446,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tests/data/parser/parseCreateTableWithParser.in b/tests/data/parser/parseCreateTableWithParser.in new file mode 100644 index 000000000..90d27dd69 --- /dev/null +++ b/tests/data/parser/parseCreateTableWithParser.in @@ -0,0 +1,5 @@ +CREATE TABLE `mytable` ( + `column_one` VARCHAR(255) DEFAULT NULL, + FULLTEXT KEY `fulltext_index` (`column_one`) /*!50100 WITH PARSER `ngram` */, + CONSTRAINT `my_constraint_1` FOREIGN KEY (`column_one`) REFERENCES `other_table` (`column_two`) ON DELETE RESTRICT ON UPDATE RESTRICT +) diff --git a/tests/data/parser/parseCreateTableWithParser.out b/tests/data/parser/parseCreateTableWithParser.out new file mode 100644 index 000000000..160c7734f --- /dev/null +++ b/tests/data/parser/parseCreateTableWithParser.out @@ -0,0 +1,791 @@ +{ + "query": "CREATE TABLE `mytable` (\n `column_one` VARCHAR(255) DEFAULT NULL,\n FULLTEXT KEY `fulltext_index` (`column_one`) /*!50100 WITH PARSER `ngram` */,\n CONSTRAINT `my_constraint_1` FOREIGN KEY (`column_one`) REFERENCES `other_table` (`column_two`) ON DELETE RESTRICT ON UPDATE RESTRICT\n)\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "CREATE TABLE `mytable` (\n `column_one` VARCHAR(255) DEFAULT NULL,\n FULLTEXT KEY `fulltext_index` (`column_one`) /*!50100 WITH PARSER `ngram` */,\n CONSTRAINT `my_constraint_1` FOREIGN KEY (`column_one`) REFERENCES `other_table` (`column_two`) ON DELETE RESTRICT ON UPDATE RESTRICT\n)\n", + "len": 285, + "last": 285, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "CREATE", + "value": "CREATE", + "keyword": "CREATE", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "TABLE", + "value": "TABLE", + "keyword": "TABLE", + "type": 1, + "flags": 3, + "position": 7 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 12 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`mytable`", + "value": "mytable", + "keyword": null, + "type": 8, + "flags": 2, + "position": 13 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 22 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "(", + "value": "(", + "keyword": null, + "type": 2, + "flags": 16, + "position": 23 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 24 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`column_one`", + "value": "column_one", + "keyword": null, + "type": 8, + "flags": 2, + "position": 27 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 39 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "VARCHAR", + "value": "VARCHAR", + "keyword": "VARCHAR", + "type": 1, + "flags": 11, + "position": 40 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "(", + "value": "(", + "keyword": null, + "type": 2, + "flags": 16, + "position": 47 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "255", + "value": 255, + "keyword": null, + "type": 6, + "flags": 0, + "position": 48 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ")", + "value": ")", + "keyword": null, + "type": 2, + "flags": 16, + "position": 51 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 52 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "DEFAULT", + "value": "DEFAULT", + "keyword": "DEFAULT", + "type": 1, + "flags": 35, + "position": 53 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 60 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "NULL", + "value": "NULL", + "keyword": "NULL", + "type": 1, + "flags": 3, + "position": 61 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ",", + "value": ",", + "keyword": null, + "type": 2, + "flags": 16, + "position": 65 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 66 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "FULLTEXT KEY", + "value": "FULLTEXT KEY", + "keyword": "FULLTEXT KEY", + "type": 1, + "flags": 23, + "position": 69 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 81 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`fulltext_index`", + "value": "fulltext_index", + "keyword": null, + "type": 8, + "flags": 2, + "position": 82 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 98 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "(", + "value": "(", + "keyword": null, + "type": 2, + "flags": 16, + "position": 99 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`column_one`", + "value": "column_one", + "keyword": null, + "type": 8, + "flags": 2, + "position": 100 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ")", + "value": ")", + "keyword": null, + "type": 2, + "flags": 16, + "position": 112 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 113 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "/*!50100", + "value": "/*!50100", + "keyword": null, + "type": 4, + "flags": 10, + "position": 114 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 122 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "WITH PARSER", + "value": "WITH PARSER", + "keyword": "WITH PARSER", + "type": 1, + "flags": 7, + "position": 123 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 134 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`ngram`", + "value": "ngram", + "keyword": null, + "type": 8, + "flags": 2, + "position": 135 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 142 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "*/", + "value": "*/", + "keyword": null, + "type": 4, + "flags": 2, + "position": 143 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ",", + "value": ",", + "keyword": null, + "type": 2, + "flags": 16, + "position": 145 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 146 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "CONSTRAINT", + "value": "CONSTRAINT", + "keyword": "CONSTRAINT", + "type": 1, + "flags": 3, + "position": 149 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 159 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`my_constraint_1`", + "value": "my_constraint_1", + "keyword": null, + "type": 8, + "flags": 2, + "position": 160 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 177 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "FOREIGN KEY", + "value": "FOREIGN KEY", + "keyword": "FOREIGN KEY", + "type": 1, + "flags": 23, + "position": 178 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 189 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "(", + "value": "(", + "keyword": null, + "type": 2, + "flags": 16, + "position": 190 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`column_one`", + "value": "column_one", + "keyword": null, + "type": 8, + "flags": 2, + "position": 191 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ")", + "value": ")", + "keyword": null, + "type": 2, + "flags": 16, + "position": 203 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 204 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "REFERENCES", + "value": "REFERENCES", + "keyword": "REFERENCES", + "type": 1, + "flags": 3, + "position": 205 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 215 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`other_table`", + "value": "other_table", + "keyword": null, + "type": 8, + "flags": 2, + "position": 216 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 229 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "(", + "value": "(", + "keyword": null, + "type": 2, + "flags": 16, + "position": 230 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`column_two`", + "value": "column_two", + "keyword": null, + "type": 8, + "flags": 2, + "position": 231 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ")", + "value": ")", + "keyword": null, + "type": 2, + "flags": 16, + "position": 243 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 244 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ON DELETE", + "value": "ON DELETE", + "keyword": "ON DELETE", + "type": 1, + "flags": 7, + "position": 245 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 254 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "RESTRICT", + "value": "RESTRICT", + "keyword": "RESTRICT", + "type": 1, + "flags": 3, + "position": 255 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 263 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ON UPDATE", + "value": "ON UPDATE", + "keyword": "ON UPDATE", + "type": 1, + "flags": 7, + "position": 264 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 273 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "RESTRICT", + "value": "RESTRICT", + "keyword": "RESTRICT", + "type": 1, + "flags": 3, + "position": 274 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 282 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ")", + "value": ")", + "keyword": null, + "type": 2, + "flags": 16, + "position": 283 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 284 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 66, + "idx": 66 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", + "name": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "mytable", + "column": null, + "expr": "`mytable`", + "alias": null, + "function": null, + "subquery": null + }, + "entityOptions": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + }, + "fields": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", + "name": "column_one", + "isConstraint": null, + "type": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", + "name": "VARCHAR", + "parameters": [ + "255" + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + } + }, + "key": null, + "references": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "2": { + "name": "DEFAULT", + "equals": false, + "expr": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": null, + "column": null, + "expr": "NULL", + "alias": null, + "function": null, + "subquery": null + }, + "value": "NULL" + } + } + } + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", + "name": null, + "isConstraint": null, + "type": null, + "key": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", + "name": "fulltext_index", + "columns": [ + { + "name": "column_one" + } + ], + "type": "FULLTEXT KEY", + "expr": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "3": { + "name": "WITH PARSER", + "equals": false, + "expr": "`ngram`", + "value": "ngram" + } + } + } + }, + "references": null, + "options": null + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", + "name": "my_constraint_1", + "isConstraint": true, + "type": null, + "key": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Key", + "name": null, + "columns": [ + { + "name": "column_one" + } + ], + "type": "FOREIGN KEY", + "expr": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + } + }, + "references": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Reference", + "table": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "other_table", + "column": null, + "expr": "`other_table`", + "alias": null, + "function": null, + "subquery": null + }, + "columns": [ + "column_two" + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "2": { + "name": "ON DELETE", + "equals": false, + "expr": "RESTRICT", + "value": "RESTRICT" + }, + "3": { + "name": "ON UPDATE", + "equals": false, + "expr": "RESTRICT", + "value": "RESTRICT" + } + } + } + }, + "options": null + } + ], + "with": null, + "select": null, + "like": null, + "partitionBy": null, + "partitionsNum": null, + "subpartitionBy": null, + "subpartitionsNum": null, + "partitions": null, + "table": null, + "return": null, + "parameters": null, + "body": [], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "6": "TABLE" + } + }, + "first": 0, + "last": 65 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseExplain14.out b/tests/data/parser/parseExplain14.out index 0a2ac92c6..63fe473a6 100644 --- a/tests/data/parser/parseExplain14.out +++ b/tests/data/parser/parseExplain14.out @@ -220,7 +220,7 @@ "message": "Unrecognized statement type.", "code": 0, "file": "/src/Parser.php", - "line": 627 + "line": 628 } ] }, diff --git a/tests/data/parser/parseExplainErr1.out b/tests/data/parser/parseExplainErr1.out index 3f60ecb33..ef5cc35a7 100644 --- a/tests/data/parser/parseExplainErr1.out +++ b/tests/data/parser/parseExplainErr1.out @@ -137,7 +137,7 @@ "message": "An expression was expected.", "code": 0, "file": "/src/Parser.php", - "line": 627 + "line": 628 }, { "@type": "PhpMyAdmin\\SqlParser\\Exceptions\\ParserException", @@ -147,7 +147,7 @@ "message": "An expression was expected.", "code": 0, "file": "/src/Parser.php", - "line": 627 + "line": 628 } ] }, diff --git a/tests/data/parser/parseKill.in b/tests/data/parser/parseKill.in new file mode 100644 index 000000000..a19d01f1a --- /dev/null +++ b/tests/data/parser/parseKill.in @@ -0,0 +1 @@ +KILL 1 \ No newline at end of file diff --git a/tests/data/parser/parseKill.out b/tests/data/parser/parseKill.out new file mode 100644 index 000000000..77f8ceace --- /dev/null +++ b/tests/data/parser/parseKill.out @@ -0,0 +1,83 @@ +{ + "query": "KILL 1", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "KILL 1", + "len": 6, + "last": 6, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "KILL", + "value": "KILL", + "keyword": "KILL", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 4 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "1", + "value": 1, + "keyword": null, + "type": 6, + "flags": 0, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 4, + "idx": 4 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", + "identifier": 1, + "idKeywordUsed": false, + "parenthesisUsed": false, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + }, + "first": 0, + "last": 3 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseKill2.in b/tests/data/parser/parseKill2.in new file mode 100644 index 000000000..ff8653ef8 --- /dev/null +++ b/tests/data/parser/parseKill2.in @@ -0,0 +1 @@ +KILL (SELECT 3 + 4) \ No newline at end of file diff --git a/tests/data/parser/parseKill2.out b/tests/data/parser/parseKill2.out new file mode 100644 index 000000000..4dba157c2 --- /dev/null +++ b/tests/data/parser/parseKill2.out @@ -0,0 +1,189 @@ +{ + "query": "KILL (SELECT 3 + 4)", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "KILL (SELECT 3 + 4)", + "len": 19, + "last": 19, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "KILL", + "value": "KILL", + "keyword": "KILL", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 4 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "(", + "value": "(", + "keyword": null, + "type": 2, + "flags": 16, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SELECT", + "value": "SELECT", + "keyword": "SELECT", + "type": 1, + "flags": 3, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 12 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "3", + "value": 3, + "keyword": null, + "type": 6, + "flags": 0, + "position": 13 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 14 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "+", + "value": "+", + "keyword": null, + "type": 2, + "flags": 1, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 16 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "4", + "value": 4, + "keyword": null, + "type": 6, + "flags": 0, + "position": 17 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ")", + "value": ")", + "keyword": null, + "type": 2, + "flags": 16, + "position": 18 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 12, + "idx": 12 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", + "identifier": { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\SelectStatement", + "expr": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": null, + "column": null, + "expr": "3 + 4", + "alias": null, + "function": null, + "subquery": null + } + ], + "from": [], + "index_hints": null, + "partition": null, + "where": null, + "group": null, + "group_options": null, + "having": null, + "order": null, + "limit": null, + "procedure": null, + "into": null, + "join": null, + "union": [], + "end_options": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + }, + "first": 0, + "last": 8 + }, + "idKeywordUsed": false, + "parenthesisUsed": true, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + }, + "first": 0, + "last": 11 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseKill3.in b/tests/data/parser/parseKill3.in new file mode 100644 index 000000000..dc834b146 --- /dev/null +++ b/tests/data/parser/parseKill3.in @@ -0,0 +1 @@ +KILL QUERY ID 10 \ No newline at end of file diff --git a/tests/data/parser/parseKill3.out b/tests/data/parser/parseKill3.out new file mode 100644 index 000000000..3887f5867 --- /dev/null +++ b/tests/data/parser/parseKill3.out @@ -0,0 +1,121 @@ +{ + "query": "KILL QUERY ID 10", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "KILL QUERY ID 10", + "len": 16, + "last": 16, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "KILL", + "value": "KILL", + "keyword": "KILL", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 4 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "QUERY", + "value": "QUERY", + "keyword": "QUERY", + "type": 1, + "flags": 1, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 10 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "ID", + "value": "ID", + "keyword": null, + "type": 0, + "flags": 0, + "position": 11 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 13 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "10", + "value": 10, + "keyword": null, + "type": 6, + "flags": 0, + "position": 14 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 8, + "idx": 8 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", + "identifier": 10, + "idKeywordUsed": true, + "parenthesisUsed": false, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "2": "QUERY" + } + }, + "first": 0, + "last": 7 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseKillConnection.in b/tests/data/parser/parseKillConnection.in new file mode 100644 index 000000000..cbe01e0ff --- /dev/null +++ b/tests/data/parser/parseKillConnection.in @@ -0,0 +1 @@ +KILL CONNECTION 1 \ No newline at end of file diff --git a/tests/data/parser/parseKillConnection.out b/tests/data/parser/parseKillConnection.out new file mode 100644 index 000000000..027478c06 --- /dev/null +++ b/tests/data/parser/parseKillConnection.out @@ -0,0 +1,103 @@ +{ + "query": "KILL CONNECTION 1", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "KILL CONNECTION 1", + "len": 17, + "last": 17, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "KILL", + "value": "KILL", + "keyword": "KILL", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 4 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "CONNECTION", + "value": "CONNECTION", + "keyword": "CONNECTION", + "type": 1, + "flags": 1, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "1", + "value": 1, + "keyword": null, + "type": 6, + "flags": 0, + "position": 16 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 6, + "idx": 6 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", + "identifier": 1, + "idKeywordUsed": false, + "parenthesisUsed": false, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "2": "CONNECTION" + } + }, + "first": 0, + "last": 5 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseKillErr1.in b/tests/data/parser/parseKillErr1.in new file mode 100644 index 000000000..79fae152d --- /dev/null +++ b/tests/data/parser/parseKillErr1.in @@ -0,0 +1 @@ +KILL CONNECTION QUERY 1 \ No newline at end of file diff --git a/tests/data/parser/parseKillErr1.out b/tests/data/parser/parseKillErr1.out new file mode 100644 index 000000000..bac19500c --- /dev/null +++ b/tests/data/parser/parseKillErr1.out @@ -0,0 +1,130 @@ +{ + "query": "KILL CONNECTION QUERY 1", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "KILL CONNECTION QUERY 1", + "len": 23, + "last": 23, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "KILL", + "value": "KILL", + "keyword": "KILL", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 4 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "CONNECTION", + "value": "CONNECTION", + "keyword": "CONNECTION", + "type": 1, + "flags": 1, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "QUERY", + "value": "QUERY", + "keyword": "QUERY", + "type": 1, + "flags": 1, + "position": 16 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 21 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "1", + "value": 1, + "keyword": null, + "type": 6, + "flags": 0, + "position": 22 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 8, + "idx": 8 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", + "identifier": 1, + "idKeywordUsed": false, + "parenthesisUsed": false, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "2": "CONNECTION", + "6": "QUERY" + } + }, + "first": 0, + "last": 7 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [ + [ + "This option conflicts with \"CONNECTION\".", + { + "@type": "@6" + }, + 0 + ] + ] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseKillErr2.in b/tests/data/parser/parseKillErr2.in new file mode 100644 index 000000000..4551c2f17 --- /dev/null +++ b/tests/data/parser/parseKillErr2.in @@ -0,0 +1 @@ +KILL \ No newline at end of file diff --git a/tests/data/parser/parseKillErr2.out b/tests/data/parser/parseKillErr2.out new file mode 100644 index 000000000..721fd2505 --- /dev/null +++ b/tests/data/parser/parseKillErr2.out @@ -0,0 +1,80 @@ +{ + "query": "KILL", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "KILL", + "len": 4, + "last": 4, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "KILL", + "value": "KILL", + "keyword": "KILL", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 2, + "idx": 2 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", + "identifier": null, + "idKeywordUsed": false, + "parenthesisUsed": false, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + }, + "first": 0, + "last": 0 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [ + [ + "Unexpected token.", + { + "@type": "@3" + }, + 0 + ], + [ + "Unexpected end of the KILL statement.", + { + "@type": "@3" + }, + 0 + ] + ] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseKillErr3.in b/tests/data/parser/parseKillErr3.in new file mode 100644 index 000000000..f2bdc0e22 --- /dev/null +++ b/tests/data/parser/parseKillErr3.in @@ -0,0 +1 @@ +KILL (SELECT) \ No newline at end of file diff --git a/tests/data/parser/parseKillErr3.out b/tests/data/parser/parseKillErr3.out new file mode 100644 index 000000000..3b0a2395b --- /dev/null +++ b/tests/data/parser/parseKillErr3.out @@ -0,0 +1,109 @@ +{ + "query": "KILL (SELECT)", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "KILL (SELECT)", + "len": 13, + "last": 13, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "KILL", + "value": "KILL", + "keyword": "KILL", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 4 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "(", + "value": "(", + "keyword": null, + "type": 2, + "flags": 16, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SELECT", + "value": "SELECT", + "keyword": "SELECT", + "type": 1, + "flags": 3, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ")", + "value": ")", + "keyword": null, + "type": 2, + "flags": 16, + "position": 12 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 6, + "idx": 6 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", + "identifier": null, + "idKeywordUsed": false, + "parenthesisUsed": true, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + }, + "first": 0, + "last": 5 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [ + [ + "An expression was expected.", + { + "@type": "@6" + }, + 0 + ] + ] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseKillErr4.in b/tests/data/parser/parseKillErr4.in new file mode 100644 index 000000000..6ee8db58d --- /dev/null +++ b/tests/data/parser/parseKillErr4.in @@ -0,0 +1 @@ +KILL (INSERT) \ No newline at end of file diff --git a/tests/data/parser/parseKillErr4.out b/tests/data/parser/parseKillErr4.out new file mode 100644 index 000000000..c5adb58ec --- /dev/null +++ b/tests/data/parser/parseKillErr4.out @@ -0,0 +1,140 @@ +{ + "query": "KILL (INSERT)", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "KILL (INSERT)", + "len": 13, + "last": 13, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "KILL", + "value": "KILL", + "keyword": "KILL", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 4 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "(", + "value": "(", + "keyword": null, + "type": 2, + "flags": 16, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "INSERT", + "value": "INSERT", + "keyword": "INSERT", + "type": 1, + "flags": 35, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ")", + "value": ")", + "keyword": null, + "type": 2, + "flags": 16, + "position": 12 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 6, + "idx": 6 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", + "identifier": null, + "idKeywordUsed": false, + "parenthesisUsed": true, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + }, + "first": 0, + "last": 2 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\InsertStatement", + "into": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\IntoKeyword", + "type": null, + "dest": null, + "columns": null, + "values": null, + "fields_options": null, + "fields_keyword": null, + "lines_options": null + }, + "values": null, + "set": null, + "select": null, + "with": null, + "onDuplicateSet": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + }, + "first": 3, + "last": 4 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [ + [ + "Unexpected token.", + { + "@type": "@5" + }, + 0 + ], + [ + "Unexpected end of the KILL statement.", + { + "@type": "@5" + }, + 0 + ] + ] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseKillQuery.in b/tests/data/parser/parseKillQuery.in new file mode 100644 index 000000000..1bab1d421 --- /dev/null +++ b/tests/data/parser/parseKillQuery.in @@ -0,0 +1 @@ +KILL QUERY 1 \ No newline at end of file diff --git a/tests/data/parser/parseKillQuery.out b/tests/data/parser/parseKillQuery.out new file mode 100644 index 000000000..1d2f145c3 --- /dev/null +++ b/tests/data/parser/parseKillQuery.out @@ -0,0 +1,103 @@ +{ + "query": "KILL QUERY 1", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "KILL QUERY 1", + "len": 12, + "last": 12, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "KILL", + "value": "KILL", + "keyword": "KILL", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 4 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "QUERY", + "value": "QUERY", + "keyword": "QUERY", + "type": 1, + "flags": 1, + "position": 5 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 10 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "1", + "value": 1, + "keyword": null, + "type": 6, + "flags": 0, + "position": 11 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 6, + "idx": 6 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\KillStatement", + "identifier": 1, + "idKeywordUsed": false, + "parenthesisUsed": false, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "2": "QUERY" + } + }, + "first": 0, + "last": 5 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseSelectOverAlias_mariadb_100600.out b/tests/data/parser/parseSelectOverAlias_mariadb_100600.out index 0c9ac2f0a..dec3017fc 100644 --- a/tests/data/parser/parseSelectOverAlias_mariadb_100600.out +++ b/tests/data/parser/parseSelectOverAlias_mariadb_100600.out @@ -192,9 +192,9 @@ "@type": "PhpMyAdmin\\SqlParser\\Token", "token": "rank", "value": "rank", - "keyword": null, - "type": 0, - "flags": 0, + "keyword": "RANK", + "type": 1, + "flags": 33, "position": 64 }, { @@ -509,7 +509,7 @@ "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", "database": null, "table": null, - "column": "rank", + "column": null, "expr": "rank() over( partition by `products`.`pvalue` order by `products`.`pid` desc)", "alias": "myrank", "function": "rank", diff --git a/tests/data/parser/parseUpdate3.out b/tests/data/parser/parseUpdate3.out index 33621c291..75a41bffd 100644 --- a/tests/data/parser/parseUpdate3.out +++ b/tests/data/parser/parseUpdate3.out @@ -243,6 +243,13 @@ "@type": "@12" }, 0 + ], + [ + "Missing assignment in SET operation.", + { + "@type": "@11" + }, + 0 ] ] } diff --git a/tests/data/parser/parseUpdateEmptySet.in b/tests/data/parser/parseUpdateEmptySet.in new file mode 100644 index 000000000..996d765b5 --- /dev/null +++ b/tests/data/parser/parseUpdateEmptySet.in @@ -0,0 +1 @@ +UPDATE test SET WHERE 1; diff --git a/tests/data/parser/parseUpdateEmptySet.out b/tests/data/parser/parseUpdateEmptySet.out new file mode 100644 index 000000000..dbeff527f --- /dev/null +++ b/tests/data/parser/parseUpdateEmptySet.out @@ -0,0 +1,184 @@ +{ + "query": "UPDATE test SET WHERE 1;\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "UPDATE test SET WHERE 1;\n", + "len": 25, + "last": 25, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "UPDATE", + "value": "UPDATE", + "keyword": "UPDATE", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "test", + "value": "test", + "keyword": null, + "type": 0, + "flags": 0, + "position": 7 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 11 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SET", + "value": "SET", + "keyword": "SET", + "type": 1, + "flags": 11, + "position": 12 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 15 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "WHERE", + "value": "WHERE", + "keyword": "WHERE", + "type": 1, + "flags": 3, + "position": 16 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 21 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "1", + "value": 1, + "keyword": null, + "type": 6, + "flags": 0, + "position": 22 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 23 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 24 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 12, + "idx": 12 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\UpdateStatement", + "tables": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "test", + "column": null, + "expr": "test", + "alias": null, + "function": null, + "subquery": null + } + ], + "set": [], + "where": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", + "identifiers": [], + "isOperator": false, + "expr": "1" + } + ], + "order": null, + "limit": null, + "join": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + }, + "first": 0, + "last": 8 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [ + [ + "Missing assignment in SET operation.", + { + "@type": "@7" + }, + 0 + ] + ] + } +} \ No newline at end of file diff --git a/tests/data/parser/parseWhere0.in b/tests/data/parser/parseWhere0.in new file mode 100644 index 000000000..e089e23d0 --- /dev/null +++ b/tests/data/parser/parseWhere0.in @@ -0,0 +1 @@ +DELETE FROM t where 0 AND 0 \ No newline at end of file diff --git a/tests/data/parser/parseWhere0.out b/tests/data/parser/parseWhere0.out new file mode 100644 index 000000000..0c851a6da --- /dev/null +++ b/tests/data/parser/parseWhere0.out @@ -0,0 +1,208 @@ +{ + "query": "DELETE FROM t where 0 AND 0", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "DELETE FROM t where 0 AND 0", + "len": 27, + "last": 27, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "DELETE", + "value": "DELETE", + "keyword": "DELETE", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "FROM", + "value": "FROM", + "keyword": "FROM", + "type": 1, + "flags": 3, + "position": 7 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 11 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "t", + "value": "t", + "keyword": null, + "type": 0, + "flags": 0, + "position": 12 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 13 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "where", + "value": "WHERE", + "keyword": "WHERE", + "type": 1, + "flags": 3, + "position": 14 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 19 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "0", + "value": 0, + "keyword": null, + "type": 6, + "flags": 0, + "position": 20 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 21 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "AND", + "value": "AND", + "keyword": "AND", + "type": 1, + "flags": 3, + "position": 22 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 25 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "0", + "value": 0, + "keyword": null, + "type": 6, + "flags": 0, + "position": 26 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 14, + "idx": 14 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\DeleteStatement", + "from": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "t", + "column": null, + "expr": "t", + "alias": null, + "function": null, + "subquery": null + } + ], + "join": null, + "using": null, + "columns": null, + "partition": null, + "where": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", + "identifiers": [], + "isOperator": false, + "expr": "0" + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", + "identifiers": [], + "isOperator": true, + "expr": "AND" + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Condition", + "identifiers": [], + "isOperator": false, + "expr": "0" + } + ], + "order": null, + "limit": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + }, + "first": 0, + "last": 12 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/parser/parsephpMyAdminExport1.out b/tests/data/parser/parsephpMyAdminExport1.out index 7367aed0a..4ee4bdb48 100644 --- a/tests/data/parser/parsephpMyAdminExport1.out +++ b/tests/data/parser/parsephpMyAdminExport1.out @@ -5384,6 +5384,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -5448,6 +5462,20 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { @@ -5527,6 +5555,20 @@ "altered": [ { "@type": "PhpMyAdmin\\SqlParser\\Components\\AlterOperation", + "ROUTINE_OPTIONS": { + "COMMENT": [ + 1, + "var" + ], + "LANGUAGE SQL": 2, + "CONTAINS SQL": 3, + "NO SQL": 3, + "READS SQL DATA": 3, + "MODIFIES SQL DATA": 3, + "SQL SECURITY": 4, + "DEFINER": 5, + "INVOKER": 5 + }, "options": { "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", "options": { diff --git a/tools/contexts/MariaDb100600.txt b/tools/contexts/MariaDb100600.txt index 02e421548..b72b0a0c8 100644 --- a/tools/contexts/MariaDb100600.txt +++ b/tools/contexts/MariaDb100600.txt @@ -358,7 +358,7 @@ NULL (R) NUMBER NUMERIC (R) NVARCHAR -OFFSET +OFFSET (R) OLD_PASSWORD ON (R) ON COMPLETION NOT PRESERVE diff --git a/tools/contexts/MariaDb100700.txt b/tools/contexts/MariaDb100700.txt index 02e421548..5e0346e4c 100644 --- a/tools/contexts/MariaDb100700.txt +++ b/tools/contexts/MariaDb100700.txt @@ -358,7 +358,7 @@ NULL (R) NUMBER NUMERIC (R) NVARCHAR -OFFSET +OFFSET (R) OLD_PASSWORD ON (R) ON COMPLETION NOT PRESERVE @@ -466,6 +466,7 @@ ROUTINE ROW ROW_COUNT ROW_FORMAT +ROW_NUMBER (R) ROWS (R) RTREE SAVEPOINT diff --git a/tools/contexts/MariaDb100800.txt b/tools/contexts/MariaDb100800.txt index 02e421548..5e0346e4c 100644 --- a/tools/contexts/MariaDb100800.txt +++ b/tools/contexts/MariaDb100800.txt @@ -358,7 +358,7 @@ NULL (R) NUMBER NUMERIC (R) NVARCHAR -OFFSET +OFFSET (R) OLD_PASSWORD ON (R) ON COMPLETION NOT PRESERVE @@ -466,6 +466,7 @@ ROUTINE ROW ROW_COUNT ROW_FORMAT +ROW_NUMBER (R) ROWS (R) RTREE SAVEPOINT diff --git a/tools/contexts/MariaDb100900.txt b/tools/contexts/MariaDb100900.txt index 02e421548..5e0346e4c 100644 --- a/tools/contexts/MariaDb100900.txt +++ b/tools/contexts/MariaDb100900.txt @@ -358,7 +358,7 @@ NULL (R) NUMBER NUMERIC (R) NVARCHAR -OFFSET +OFFSET (R) OLD_PASSWORD ON (R) ON COMPLETION NOT PRESERVE @@ -466,6 +466,7 @@ ROUTINE ROW ROW_COUNT ROW_FORMAT +ROW_NUMBER (R) ROWS (R) RTREE SAVEPOINT diff --git a/tools/contexts/MariaDb101000.txt b/tools/contexts/MariaDb101000.txt index 02e421548..5e0346e4c 100644 --- a/tools/contexts/MariaDb101000.txt +++ b/tools/contexts/MariaDb101000.txt @@ -358,7 +358,7 @@ NULL (R) NUMBER NUMERIC (R) NVARCHAR -OFFSET +OFFSET (R) OLD_PASSWORD ON (R) ON COMPLETION NOT PRESERVE @@ -466,6 +466,7 @@ ROUTINE ROW ROW_COUNT ROW_FORMAT +ROW_NUMBER (R) ROWS (R) RTREE SAVEPOINT diff --git a/tools/contexts/MariaDb101100.txt b/tools/contexts/MariaDb101100.txt index 02e421548..5e0346e4c 100644 --- a/tools/contexts/MariaDb101100.txt +++ b/tools/contexts/MariaDb101100.txt @@ -358,7 +358,7 @@ NULL (R) NUMBER NUMERIC (R) NVARCHAR -OFFSET +OFFSET (R) OLD_PASSWORD ON (R) ON COMPLETION NOT PRESERVE @@ -466,6 +466,7 @@ ROUTINE ROW ROW_COUNT ROW_FORMAT +ROW_NUMBER (R) ROWS (R) RTREE SAVEPOINT diff --git a/tools/contexts/MariaDb110000.txt b/tools/contexts/MariaDb110000.txt index 02e421548..5e0346e4c 100644 --- a/tools/contexts/MariaDb110000.txt +++ b/tools/contexts/MariaDb110000.txt @@ -358,7 +358,7 @@ NULL (R) NUMBER NUMERIC (R) NVARCHAR -OFFSET +OFFSET (R) OLD_PASSWORD ON (R) ON COMPLETION NOT PRESERVE @@ -466,6 +466,7 @@ ROUTINE ROW ROW_COUNT ROW_FORMAT +ROW_NUMBER (R) ROWS (R) RTREE SAVEPOINT diff --git a/tools/contexts/MariaDb110100.txt b/tools/contexts/MariaDb110100.txt index 02e421548..5e0346e4c 100644 --- a/tools/contexts/MariaDb110100.txt +++ b/tools/contexts/MariaDb110100.txt @@ -358,7 +358,7 @@ NULL (R) NUMBER NUMERIC (R) NVARCHAR -OFFSET +OFFSET (R) OLD_PASSWORD ON (R) ON COMPLETION NOT PRESERVE @@ -466,6 +466,7 @@ ROUTINE ROW ROW_COUNT ROW_FORMAT +ROW_NUMBER (R) ROWS (R) RTREE SAVEPOINT diff --git a/tools/contexts/MariaDb110200.txt b/tools/contexts/MariaDb110200.txt index 02e421548..5e0346e4c 100644 --- a/tools/contexts/MariaDb110200.txt +++ b/tools/contexts/MariaDb110200.txt @@ -358,7 +358,7 @@ NULL (R) NUMBER NUMERIC (R) NVARCHAR -OFFSET +OFFSET (R) OLD_PASSWORD ON (R) ON COMPLETION NOT PRESERVE @@ -466,6 +466,7 @@ ROUTINE ROW ROW_COUNT ROW_FORMAT +ROW_NUMBER (R) ROWS (R) RTREE SAVEPOINT diff --git a/tools/contexts/MariaDb110300.txt b/tools/contexts/MariaDb110300.txt index 02e421548..5e0346e4c 100644 --- a/tools/contexts/MariaDb110300.txt +++ b/tools/contexts/MariaDb110300.txt @@ -358,7 +358,7 @@ NULL (R) NUMBER NUMERIC (R) NVARCHAR -OFFSET +OFFSET (R) OLD_PASSWORD ON (R) ON COMPLETION NOT PRESERVE @@ -466,6 +466,7 @@ ROUTINE ROW ROW_COUNT ROW_FORMAT +ROW_NUMBER (R) ROWS (R) RTREE SAVEPOINT diff --git a/tools/contexts/MariaDb110400.txt b/tools/contexts/MariaDb110400.txt index 02e421548..5e0346e4c 100644 --- a/tools/contexts/MariaDb110400.txt +++ b/tools/contexts/MariaDb110400.txt @@ -358,7 +358,7 @@ NULL (R) NUMBER NUMERIC (R) NVARCHAR -OFFSET +OFFSET (R) OLD_PASSWORD ON (R) ON COMPLETION NOT PRESERVE @@ -466,6 +466,7 @@ ROUTINE ROW ROW_COUNT ROW_FORMAT +ROW_NUMBER (R) ROWS (R) RTREE SAVEPOINT diff --git a/tools/contexts/MariaDb110500.txt b/tools/contexts/MariaDb110500.txt new file mode 100644 index 000000000..5e0346e4c --- /dev/null +++ b/tools/contexts/MariaDb110500.txt @@ -0,0 +1,630 @@ +ACCESSIBLE (R) +ACCOUNT +ACTION +ADD (R) +AFTER +AGAINST +AGGREGATE +ALGORITHM +ALL (R) +ALTER (R) +ALWAYS +ANALYSE +ANALYZE (R) +AND (R) +ANY +AS (R) +ASC (R) +ASCII +ASENSITIVE (R) +AT +AUTO_INCREMENT +AUTOEXTEND_SIZE +AVG +AVG_ROW_LENGTH +BACKUP +BEFORE (R) +BEGIN +BETWEEN (R) +BIGINT (R) +BINARY (R) +BINLOG +BIT +BLOB (R) +BLOCK +BOOL +BOOLEAN +BOTH (R) +BTREE +BY (R) +BYTE +CACHE +CALL (R) +CASCADE (R) +CASCADED +CASE (R) +CATALOG_NAME +CHAIN +CHANGE (R) +CHANGED +CHANNEL +CHAR (R) +CHARACTER (R) +CHARSET +CHECK (R) +CHECKSUM +CIPHER +CLASS_ORIGIN +CLIENT +CLOSE +COALESCE +CODE +COLLATE (R) +COLLATION +COLUMN (R) +COLUMN_FORMAT +COLUMN_NAME +COLUMNS +COMMENT +COMMIT +COMMITTED +COMPACT +COMPLETION +COMPRESSED +COMPRESSION +CONCURRENT +CONDITION (R) +CONNECTION +CONSISTENT +CONSTRAINT (R) +CONSTRAINT_CATALOG +CONSTRAINT_NAME +CONSTRAINT_SCHEMA +CONTAINS +CONTEXT +CONTINUE (R) +CONVERT (R) +CPU +CREATE (R) +CROSS (R) +CUBE +CURRENT +CURRENT_DATE (R) +CURRENT_TIME (R) +CURRENT_TIMESTAMP (R) +CURRENT_USER (R) +CURSOR (R) +CURSOR_NAME +DATA +DATABASE (R) +DATABASES (R) +DATAFILE +DATE +DATETIME +DAY +DAY_HOUR (R) +DAY_MICROSECOND (R) +DAY_MINUTE (R) +DAY_SECOND (R) +DEALLOCATE +DEC (R) +DECIMAL (R) +DECLARE (R) +DEFAULT (R) +DEFAULT_AUTH +DEFINER +DELAY_KEY_WRITE +DELAYED (R) +DELETE (R) +DES_KEY_FILE +DESC (R) +DESCRIBE (R) +DETERMINISTIC (R) +DIAGNOSTICS +DIRECTORY +DISABLE +DISABLE ON SLAVE +DISCARD +DISK +DISTINCT (R) +DISTINCTROW (R) +DIV (R) +DO +DOUBLE (R) +DROP (R) +DUAL (R) +DUMPFILE +DUPLICATE +DYNAMIC +EACH (R) +ELSE (R) +ELSEIF (R) +ENABLE +ENCLOSED (R) +END +ENDS +ENGINE +ENGINES +ENUM +ERROR +ERRORS +ESCAPE +ESCAPED (R) +EVENT +EVENTS +EVERY +EXCEPT (R) +EXCHANGE +EXECUTE +EXISTS (R) +EXIT (R) +EXPANSION +EXPIRE +EXPLAIN (R) +EXPORT +EXTENDED +EXTENT_SIZE +FALSE (R) +FAST +FAULTS +FETCH (R) +FIELDS +FILE +FILE_BLOCK_SIZE +FILTER +FIRST +FIXED +FLOAT (R) +FLOAT4 (R) +FLOAT8 (R) +FLUSH +FOLLOWS +FOR (R) +FORCE (R) +FOREIGN (R) +FORMAT +FOUND +FROM (R) +FULL +FULLTEXT (R) +FUNCTION +GENERAL +GENERATED (R) +GEOMETRY +GEOMETRYCOLLECTION +GET (R) +GET_FORMAT +GLOBAL +GRANT (R) +GRANTS +GROUP (R) +GROUP_REPLICATION +HANDLER +HASH +HAVING (R) +HELP +HIGH_PRIORITY (R) +HOST +HOSTS +HOUR +HOUR_MICROSECOND (R) +HOUR_MINUTE (R) +HOUR_SECOND (R) +IDENTIFIED +IDENTIFIED VIA (K) +IDENTIFIED WITH (K) +IF (R) +IGNORE (R) +IGNORE_SERVER_IDS +IMPORT +IN (R) +INDEX (R) +INDEXES +INFILE (R) +INITIAL_SIZE +INNER (R) +INOUT (R) +INSENSITIVE (R) +INSERT (R) +INSERT_METHOD +INSTALL +INT (R) +INT1 (R) +INT2 (R) +INT3 (R) +INT4 (R) +INT8 (R) +INTEGER (R) +INTERSECT (R) +INTERVAL (R) +INTO (R) +INVOKER +INVISIBLE +IO +IO_AFTER_GTIDS (R) +IO_BEFORE_GTIDS (R) +IO_THREAD +IPC +IS (R) +ISOLATION +ISSUER +ITERATE (R) +JOIN (R) +KEY (R) +KEY_BLOCK_SIZE +KEYS (R) +KILL (R) +LANGUAGE +LAST +LEADING (R) +LEAVE (R) +LEAVES +LEFT (R) +LESS +LEVEL +LIKE (R) +LIMIT (R) +LINEAR (R) +LINES (R) +LINESTRING +LIST +LOAD (R) +LOCAL +LOCALTIME (R) +LOCALTIMESTAMP (R) +LOCK (R) +LOCKS +LOGFILE +LOGS +LONG (R) +LONGBLOB (R) +LONGTEXT (R) +LOOP (R) +LOW_PRIORITY (R) +MASTER +MASTER_AUTO_POSITION +MASTER_BIND (R) +MASTER_CONNECT_RETRY +MASTER_DELAY +MASTER_HEARTBEAT_PERIOD +MASTER_HOST +MASTER_LOG_FILE +MASTER_LOG_POS +MASTER_PASSWORD +MASTER_PORT +MASTER_RETRY_COUNT +MASTER_SERVER_ID +MASTER_SSL +MASTER_SSL_CA +MASTER_SSL_CAPATH +MASTER_SSL_CERT +MASTER_SSL_CIPHER +MASTER_SSL_CRL +MASTER_SSL_CRLPATH +MASTER_SSL_KEY +MASTER_SSL_VERIFY_SERVER_CERT (R) +MASTER_USER +MATCH (R) +MAX_CONNECTIONS_PER_HOUR +MAX_QUERIES_PER_HOUR +MAX_ROWS +MAX_SIZE +MAX_STATEMENT_TIME +MAX_UPDATES_PER_HOUR +MAX_USER_CONNECTIONS +MAXVALUE (R) +MEDIUM +MEDIUMBLOB (R) +MEDIUMINT (R) +MEDIUMTEXT (R) +MEMORY +MERGE +MESSAGE_TEXT +MICROSECOND +MIDDLEINT (R) +MIGRATE +MIN_ROWS +MINUTE +MINUTE_MICROSECOND (R) +MINUTE_SECOND (R) +MOD (R) +MODE +MODIFIES (R) +MODIFY +MONTH +MULTILINESTRING +MULTIPOINT +MULTIPOLYGON +MUTEX +MYSQL_ERRNO +NAME +NAMES +NATIONAL +NATURAL (R) +NCHAR +NDB +NDBCLUSTER +NEVER +NEW +NEXT +NO +NO_WAIT +NO_WRITE_TO_BINLOG (R) +NODEGROUP +NONBLOCKING +NONE +NOT (R) +NULL (R) +NUMBER +NUMERIC (R) +NVARCHAR +OFFSET (R) +OLD_PASSWORD +ON (R) +ON COMPLETION NOT PRESERVE +ON COMPLETION PRESERVE +ON SCHEDULE +ONE +ONLY +OPEN +OPTIMIZE (R) +OPTIMIZER_COSTS (R) +OPTION (R) +OPTIONALLY (R) +OPTIONS +OR (R) +ORDER (R) +OUT (R) +OUTER (R) +OUTFILE (R) +OWNER +OVER (R) +PACK_KEYS +PAGE +PARSE_GCOL_EXPR +PARSER +PARTIAL +PARTITION (R) +PARTITIONING +PARTITIONS +PASSWORD +PHASE +PLUGIN +PLUGIN_DIR +PLUGINS +POINT +POLYGON +PORT +PRECEDES +PRECISION (R) +PREPARE +PRESERVE +PREV +PRIMARY (R) +PRIVILEGES +PROCEDURE (R) +PROCESSLIST +PROFILE +PROFILES +PROXY +PURGE (R) +QUARTER +QUERY +QUICK +RANGE (R) +READ (R) +READ_ONLY +READ_WRITE (R) +READS (R) +REAL (R) +REBUILD +RECOVER +RECURSIVE (R) +REDO_BUFFER_SIZE +REDOFILE +REDUNDANT +REFERENCES (R) +REGEXP (R) +RELAY +RELAY_LOG_FILE +RELAY_LOG_POS +RELAY_THREAD +RELAYLOG +RELEASE (R) +RELOAD +REMOVE +RENAME (R) +REORGANIZE +REPAIR +REPEAT (R) +REPEATABLE +REPLACE (R) +REPLICATE_DO_DB +REPLICATE_DO_TABLE +REPLICATE_IGNORE_DB +REPLICATE_IGNORE_TABLE +REPLICATE_REWRITE_DB +REPLICATE_WILD_DO_TABLE +REPLICATE_WILD_IGNORE_TABLE +REPLICATION +REQUIRE (R) +RESET +RESIGNAL (R) +RESTORE +RESTRICT (R) +RESUME +RETURN (R) +RETURNED_SQLSTATE +RETURNS +REVERSE +REVOKE (R) +RIGHT (R) +RLIKE (R) +ROLLBACK +ROLLUP +ROUTINE +ROW +ROW_COUNT +ROW_FORMAT +ROW_NUMBER (R) +ROWS (R) +RTREE +SAVEPOINT +SCHEDULE +SCHEMA (R) +SCHEMA_NAME +SCHEMAS (R) +SECOND +SECOND_MICROSECOND (R) +SECURITY +SELECT (R) +SENSITIVE (R) +SEPARATOR (R) +SEQUENCE +SERIAL +SERIALIZABLE +SERVER +SESSION +SET (R) +SHARE +SHOW (R) +SHUTDOWN +SIGNAL (R) +SIGNED +SIMPLE +SLAVE +SLOW +SMALLINT (R) +SNAPSHOT +SOCKET +SOME +SONAME +SOUNDS +SOURCE +SPATIAL (R) +SPECIFIC (R) +SQL (R) +SQL_AFTER_GTIDS +SQL_AFTER_MTS_GAPS +SQL_BEFORE_GTIDS +SQL_BIG_RESULT (R) +SQL_BUFFER_RESULT +SQL_CACHE +SQL_CALC_FOUND_ROWS (R) +SQL_NO_CACHE +SQL_SMALL_RESULT (R) +SQL_THREAD +SQL_TSI_DAY +SQL_TSI_HOUR +SQL_TSI_MINUTE +SQL_TSI_MONTH +SQL_TSI_QUARTER +SQL_TSI_SECOND +SQL_TSI_WEEK +SQL_TSI_YEAR +SQLEXCEPTION (R) +SQLSTATE (R) +SQLWARNING (R) +SSL (R) +STACKED +START +STARTING (R) +STARTS +STATS_AUTO_RECALC +STATS_PERSISTENT +STATS_SAMPLE_PAGES +STATUS +STOP +STORAGE +STORED (R) +STRAIGHT_JOIN (R) +STRING +SUBCLASS_ORIGIN +SUBJECT +SUBPARTITION +SUBPARTITIONS +SUPER +SUSPEND +SWAPS +SWITCHES +TABLE (R) +TABLE_CHECKSUM +TABLE_NAME +TABLES +TABLESPACE +TEMPORARY +TEMPTABLE +TERMINATED (R) +TEXT +THAN +THEN (R) +TIME +TIMESTAMP +TIMESTAMPADD +TIMESTAMPDIFF +TINYBLOB (R) +TINYINT (R) +TINYTEXT (R) +TO (R) +TRAILING (R) +TRANSACTION +TRIGGER (R) +TRIGGERS +TRUE (R) +TRUNCATE +TYPE +TYPES +UNCOMMITTED +UNDEFINED +UNDO (R) +UNDO_BUFFER_SIZE +UNDOFILE +UNICODE +UNINSTALL +UNION (R) +UNIQUE (R) +UNKNOWN +UNLOCK (R) +UNSIGNED (R) +UNTIL +UPDATE (R) +UPGRADE +USAGE (R) +USE (R) +USE_FRM +USER +USER_RESOURCES +USING (R) +UTC_DATE (R) +UTC_TIME (R) +UTC_TIMESTAMP (R) +VALIDATION +VALUE +VALUES (R) +VARBINARY (R) +VARCHAR (R) +VARCHARACTER (R) +VARIABLES +VARYING (R) +VIEW +VIRTUAL (R) +WAIT +WARNINGS +WEEK +WEIGHT_STRING +WHEN (R) +WHERE (R) +WHILE (R) +WITH (R) +WITHOUT +WORK +WRAPPER +WRITE (R) +X509 +XA +XID +XML +XOR (R) +YEAR +YEAR_MONTH (R) +ZEROFILL (R) diff --git a/tools/contexts/MySql50100.txt b/tools/contexts/MySql50100.txt index 10cfdb414..dd9829b53 100644 --- a/tools/contexts/MySql50100.txt +++ b/tools/contexts/MySql50100.txt @@ -548,6 +548,7 @@ WHEN (R) WHERE (R) WHILE (R) WITH (R) +WITH PARSER WORK WRAPPER WRITE (R) diff --git a/tools/contexts/MySql50500.txt b/tools/contexts/MySql50500.txt index 90ea585eb..01ab86a54 100644 --- a/tools/contexts/MySql50500.txt +++ b/tools/contexts/MySql50500.txt @@ -557,6 +557,7 @@ WHEN (R) WHERE (R) WHILE (R) WITH (R) +WITH PARSER WORK WRAPPER WRITE (R) diff --git a/tools/contexts/MySql50600.txt b/tools/contexts/MySql50600.txt index 6a4eb38a2..85dc73f37 100644 --- a/tools/contexts/MySql50600.txt +++ b/tools/contexts/MySql50600.txt @@ -584,6 +584,7 @@ WHEN (R) WHERE (R) WHILE (R) WITH (R) +WITH PARSER WORK WRAPPER WRITE (R) diff --git a/tools/contexts/MySql50700.txt b/tools/contexts/MySql50700.txt index 9341b5bae..f96ff0e27 100644 --- a/tools/contexts/MySql50700.txt +++ b/tools/contexts/MySql50700.txt @@ -608,6 +608,7 @@ WHEN (R) WHERE (R) WHILE (R) WITH (R) +WITH PARSER WITHOUT WORK WRAPPER diff --git a/tools/contexts/MySql80000.txt b/tools/contexts/MySql80000.txt index 59a79493b..6661cdf83 100644 --- a/tools/contexts/MySql80000.txt +++ b/tools/contexts/MySql80000.txt @@ -612,6 +612,7 @@ WHEN (R) WHERE (R) WHILE (R) WITH (R) +WITH PARSER WITHOUT WORK WRAPPER diff --git a/tools/contexts/MySql80100.txt b/tools/contexts/MySql80100.txt index 59a79493b..6661cdf83 100644 --- a/tools/contexts/MySql80100.txt +++ b/tools/contexts/MySql80100.txt @@ -612,6 +612,7 @@ WHEN (R) WHERE (R) WHILE (R) WITH (R) +WITH PARSER WITHOUT WORK WRAPPER diff --git a/tools/contexts/MySql80200.txt b/tools/contexts/MySql80200.txt index 59a79493b..6661cdf83 100644 --- a/tools/contexts/MySql80200.txt +++ b/tools/contexts/MySql80200.txt @@ -612,6 +612,7 @@ WHEN (R) WHERE (R) WHILE (R) WITH (R) +WITH PARSER WITHOUT WORK WRAPPER diff --git a/tools/contexts/MySql80300.txt b/tools/contexts/MySql80300.txt index 59a79493b..6661cdf83 100644 --- a/tools/contexts/MySql80300.txt +++ b/tools/contexts/MySql80300.txt @@ -612,6 +612,7 @@ WHEN (R) WHERE (R) WHILE (R) WITH (R) +WITH PARSER WITHOUT WORK WRAPPER diff --git a/tools/contexts/MySql80400.txt b/tools/contexts/MySql80400.txt new file mode 100644 index 000000000..832a52da4 --- /dev/null +++ b/tools/contexts/MySql80400.txt @@ -0,0 +1,616 @@ +ACCESSIBLE (R) +ACCOUNT +ACTION +ADD (R) +AFTER +AGAINST +AGGREGATE +ALGORITHM +ALL (R) +ALTER (R) +ALWAYS +ANALYSE +ANALYZE (R) +AND (R) +ANY +AS (R) +ASC (R) +ASCII +ASENSITIVE (R) +AT +AUTO +AUTO_INCREMENT +AUTOEXTEND_SIZE +AVG +AVG_ROW_LENGTH +BACKUP +BEFORE (R) +BEGIN +BERNOULLI +BETWEEN (R) +BIGINT (R) +BINARY (R) +BINLOG +BIT +BLOB (R) +BLOCK +BOOL +BOOLEAN +BOTH (R) +BTREE +BY (R) +BYTE +CACHE +CALL (R) +CASCADE (R) +CASCADED +CASE (R) +CATALOG_NAME +CHAIN +CHANGE (R) +CHANGED +CHANNEL +CHAR (R) +CHARACTER (R) +CHARSET +CHECK (R) +CHECKSUM +CIPHER +CLASS_ORIGIN +CLIENT +CLOSE +COALESCE +CODE +COLLATE (R) +COLLATION +COLUMN (R) +COLUMN_FORMAT +COLUMN_NAME +COLUMNS +COMMENT +COMMIT +COMMITTED +COMPACT +COMPLETION +COMPRESSED +COMPRESSION +CONCURRENT +CONDITION (R) +CONNECTION +CONSISTENT +CONSTRAINT (R) +CONSTRAINT_CATALOG +CONSTRAINT_NAME +CONSTRAINT_SCHEMA +CONTAINS +CONTEXT +CONTINUE (R) +CONVERT (R) +CPU +CREATE (R) +CROSS (R) +CUBE +CURRENT +CURRENT_DATE (R) +CURRENT_TIME (R) +CURRENT_TIMESTAMP (R) +CURRENT_USER (R) +CURSOR (R) +CURSOR_NAME +DATA +DATABASE (R) +DATABASES (R) +DATAFILE +DATE +DATETIME +DAY +DAY_HOUR (R) +DAY_MICROSECOND (R) +DAY_MINUTE (R) +DAY_SECOND (R) +DEALLOCATE +DEC (R) +DECIMAL (R) +DECLARE (R) +DEFAULT (R) +DEFAULT_AUTH +DEFINER +DELAY_KEY_WRITE +DELAYED (R) +DELETE (R) +DES_KEY_FILE +DESC (R) +DESCRIBE (R) +DETERMINISTIC (R) +DIAGNOSTICS +DIRECTORY +DISABLE +DISABLE ON SLAVE +DISCARD +DISK +DISTINCT (R) +DISTINCTROW (R) +DIV (R) +DO +DOUBLE (R) +DROP (R) +DUAL (R) +DUMPFILE +DUPLICATE +DYNAMIC +EACH (R) +ELSE (R) +ELSEIF (R) +ENABLE +ENCLOSED (R) +END +ENDS +ENGINE +ENGINES +ENUM +ERROR +ERRORS +ESCAPE +ESCAPED (R) +EVENT +EVENTS +EVERY +EXCHANGE +EXECUTE +EXISTS (R) +EXIT (R) +EXPANSION +EXPIRE +EXPLAIN (R) +EXPORT +EXTENDED +EXTENT_SIZE +FALSE (R) +FAST +FAULTS +FETCH (R) +FIELDS +FILE +FILE_BLOCK_SIZE +FILTER +FIRST +FIXED +FLOAT (R) +FLOAT4 (R) +FLOAT8 (R) +FLUSH +FOLLOWS +FOR (R) +FORCE (R) +FOREIGN (R) +FORMAT +FOUND +FROM (R) +FULL +FULLTEXT (R) +FUNCTION +GENERAL +GENERATED (R) +GEOMETRY +GEOMETRYCOLLECTION +GET (R) +GET_FORMAT +GLOBAL +GRANT (R) +GRANTS +GROUP (R) +GROUP_REPLICATION +GTIDS +HANDLER +HASH +HAVING (R) +HELP +HIGH_PRIORITY (R) +HOST +HOSTS +HOUR +HOUR_MICROSECOND (R) +HOUR_MINUTE (R) +HOUR_SECOND (R) +IDENTIFIED +IDENTIFIED WITH (K) +IF (R) +IGNORE (R) +IGNORE_SERVER_IDS +IMPORT +IN (R) +INDEX (R) +INDEXES +INFILE (R) +INITIAL_SIZE +INNER (R) +INOUT (R) +INSENSITIVE (R) +INSERT (R) +INSERT_METHOD +INSTALL +INT (R) +INT1 (R) +INT2 (R) +INT3 (R) +INT4 (R) +INT8 (R) +INTEGER (R) +INTERVAL (R) +INTO (R) +INVOKER +INVISIBLE +IO +IO_AFTER_GTIDS (R) +IO_BEFORE_GTIDS (R) +IO_THREAD +IPC +IS (R) +ISOLATION +ISSUER +ITERATE (R) +JOIN (R) +KEY (R) +KEY_BLOCK_SIZE +KEYS (R) +KILL (R) +LANGUAGE +LAST +LEADING (R) +LEAVE (R) +LEAVES +LEFT (R) +LESS +LEVEL +LIKE (R) +LIMIT (R) +LINEAR (R) +LINES (R) +LINESTRING +LIST +LOAD (R) +LOCAL +LOCALTIME (R) +LOCALTIMESTAMP (R) +LOCK (R) +LOCKS +LOG +LOGFILE +LOGS +LONG (R) +LONGBLOB (R) +LONGTEXT (R) +LOOP (R) +LOW_PRIORITY (R) +MANUAL (R) +MASTER +MASTER_SERVER_ID +MATCH (R) +MAX_CONNECTIONS_PER_HOUR +MAX_QUERIES_PER_HOUR +MAX_ROWS +MAX_SIZE +MAX_STATEMENT_TIME +MAX_UPDATES_PER_HOUR +MAX_USER_CONNECTIONS +MAXVALUE (R) +MEDIUM +MEDIUMBLOB (R) +MEDIUMINT (R) +MEDIUMTEXT (R) +MEMORY +MERGE +MESSAGE_TEXT +MICROSECOND +MIDDLEINT (R) +MIGRATE +MIN_ROWS +MINUTE +MINUTE_MICROSECOND (R) +MINUTE_SECOND (R) +MOD (R) +MODE +MODIFIES (R) +MODIFY +MONTH +MULTILINESTRING +MULTIPOINT +MULTIPOLYGON +MUTEX +MYSQL_ERRNO +NAME +NAMES +NATIONAL +NATURAL (R) +NCHAR +NDB +NDBCLUSTER +NEVER +NEW +NEXT +NO +NO_WAIT +NO_WRITE_TO_BINLOG (R) +NODEGROUP +NONBLOCKING +NONE +NOT (R) +NULL (R) +NUMBER +NUMERIC (R) +NVARCHAR +OFFSET +OLD_PASSWORD +ON (R) +ON COMPLETION NOT PRESERVE +ON COMPLETION PRESERVE +ON SCHEDULE +ONE +ONLY +OPEN +OPTIMIZE (R) +OPTIMIZER_COSTS (R) +OPTION (R) +OPTIONALLY (R) +OPTIONS +OR (R) +ORDER (R) +OUT (R) +OUTER (R) +OUTFILE (R) +OVER (R) +OWNER +PACK_KEYS +PAGE +PARALLEL (R) +PARSE_GCOL_EXPR +PARSE_TREE +PARSER +PARTIAL +PARTITION (R) +PARTITIONING +PARTITIONS +PASSWORD +PERSIST +PERSIST_ONLY +PHASE +PLUGIN +PLUGIN_DIR +PLUGINS +POINT +POLYGON +PORT +PRECEDES +PRECISION (R) +PREPARE +PRESERVE +PREV +PRIMARY (R) +PRIVILEGES +PROCEDURE (R) +PROCESSLIST +PROFILE +PROFILES +PROXY +PURGE (R) +QUALIFY (R) +QUARTER +QUERY +QUICK +RANGE (R) +READ (R) +READ_ONLY +READ_WRITE (R) +READS (R) +REAL (R) +REBUILD +RECOVER +REDO_BUFFER_SIZE +REDOFILE +REDUNDANT +REFERENCES (R) +REGEXP (R) +RELAY +RELAY_LOG_FILE +RELAY_LOG_POS +RELAY_THREAD +RELAYLOG +RELEASE (R) +RELOAD +REMOVE +RENAME (R) +REORGANIZE +REPAIR +REPEAT (R) +REPEATABLE +REPLACE (R) +REPLICATE_DO_DB +REPLICATE_DO_TABLE +REPLICATE_IGNORE_DB +REPLICATE_IGNORE_TABLE +REPLICATE_REWRITE_DB +REPLICATE_WILD_DO_TABLE +REPLICATE_WILD_IGNORE_TABLE +REPLICATION +REQUIRE (R) +RESET +RESIGNAL (R) +RESTORE +RESTRICT (R) +RESUME +RETURN (R) +RETURNED_SQLSTATE +RETURNS +REVERSE +REVOKE (R) +RIGHT (R) +RLIKE (R) +ROLLBACK +ROLLUP +ROUTINE +ROW +ROW_COUNT +ROW_FORMAT +ROWS +RTREE +S3 +SAVEPOINT +SCHEDULE +SCHEMA (R) +SCHEMA_NAME +SCHEMAS (R) +SECOND +SECOND_MICROSECOND (R) +SECURITY +SELECT (R) +SENSITIVE (R) +SEPARATOR (R) +SERIAL +SERIALIZABLE +SERVER +SESSION +SET (R) +SHARE +SHOW (R) +SHUTDOWN +SIGNAL (R) +SIGNED +SIMPLE +SLAVE +SLOW +SMALLINT (R) +SNAPSHOT +SOCKET +SOME +SONAME +SOUNDS +SOURCE +SPATIAL (R) +SPECIFIC (R) +SQL (R) +SQL_AFTER_GTIDS +SQL_AFTER_MTS_GAPS +SQL_BEFORE_GTIDS +SQL_BIG_RESULT (R) +SQL_BUFFER_RESULT +SQL_CACHE +SQL_CALC_FOUND_ROWS (R) +SQL_NO_CACHE +SQL_SMALL_RESULT (R) +SQL_THREAD +SQL_TSI_DAY +SQL_TSI_HOUR +SQL_TSI_MINUTE +SQL_TSI_MONTH +SQL_TSI_QUARTER +SQL_TSI_SECOND +SQL_TSI_WEEK +SQL_TSI_YEAR +SQLEXCEPTION (R) +SQLSTATE (R) +SQLWARNING (R) +SSL (R) +STACKED +START +STARTING (R) +STARTS +STATS_AUTO_RECALC +STATS_PERSISTENT +STATS_SAMPLE_PAGES +STATUS +STOP +STORAGE +STORED (R) +STRAIGHT_JOIN (R) +STRING +SUBCLASS_ORIGIN +SUBJECT +SUBPARTITION +SUBPARTITIONS +SUPER +SUSPEND +SWAPS +SWITCHES +TABLE (R) +TABLE_CHECKSUM +TABLE_NAME +TABLES +TABLESAMPLE (R) +TABLESPACE +TEMPORARY +TEMPTABLE +TERMINATED (R) +TEXT +THAN +THEN (R) +TIME +TIMESTAMP +TIMESTAMPADD +TIMESTAMPDIFF +TINYBLOB (R) +TINYINT (R) +TINYTEXT (R) +TO (R) +TRAILING (R) +TRANSACTION +TRIGGER (R) +TRIGGERS +TRUE (R) +TRUNCATE +TYPE +TYPES +UNCOMMITTED +UNDEFINED +UNDO (R) +UNDO_BUFFER_SIZE +UNDOFILE +UNICODE +UNINSTALL +UNION (R) +UNIQUE (R) +UNKNOWN +UNLOCK (R) +UNSIGNED (R) +UNTIL +UPDATE (R) +UPGRADE +USAGE (R) +USE (R) +USE_FRM +USER +USER_RESOURCES +USING (R) +UTC_DATE (R) +UTC_TIME (R) +UTC_TIMESTAMP (R) +VALIDATION +VALUE +VALUES (R) +VARBINARY (R) +VARCHAR (R) +VARCHARACTER (R) +VARIABLES +VARYING (R) +VIEW +VIRTUAL (R) +WAIT +WARNINGS +WEEK +WEIGHT_STRING +WHEN (R) +WHERE (R) +WHILE (R) +WITH (R) +WITH PARSER +WITHOUT +WORK +WRAPPER +WRITE (R) +X509 +XA +XID +XML +XOR (R) +YEAR +YEAR_MONTH (R) +ZEROFILL (R) diff --git a/tools/contexts/MySql90000.txt b/tools/contexts/MySql90000.txt new file mode 100644 index 000000000..65ecf0fc5 --- /dev/null +++ b/tools/contexts/MySql90000.txt @@ -0,0 +1,617 @@ +ACCESSIBLE (R) +ACCOUNT +ACTION +ADD (R) +AFTER +AGAINST +AGGREGATE +ALGORITHM +ALL (R) +ALTER (R) +ALWAYS +ANALYSE +ANALYZE (R) +AND (R) +ANY +AS (R) +ASC (R) +ASCII +ASENSITIVE (R) +AT +AUTO +AUTO_INCREMENT +AUTOEXTEND_SIZE +AVG +AVG_ROW_LENGTH +BACKUP +BEFORE (R) +BEGIN +BERNOULLI +BETWEEN (R) +BIGINT (R) +BINARY (R) +BINLOG +BIT +BLOB (R) +BLOCK +BOOL +BOOLEAN +BOTH (R) +BTREE +BY (R) +BYTE +CACHE +CALL (R) +CASCADE (R) +CASCADED +CASE (R) +CATALOG_NAME +CHAIN +CHANGE (R) +CHANGED +CHANNEL +CHAR (R) +CHARACTER (R) +CHARSET +CHECK (R) +CHECKSUM +CIPHER +CLASS_ORIGIN +CLIENT +CLOSE +COALESCE +CODE +COLLATE (R) +COLLATION +COLUMN (R) +COLUMN_FORMAT +COLUMN_NAME +COLUMNS +COMMENT +COMMIT +COMMITTED +COMPACT +COMPLETION +COMPRESSED +COMPRESSION +CONCURRENT +CONDITION (R) +CONNECTION +CONSISTENT +CONSTRAINT (R) +CONSTRAINT_CATALOG +CONSTRAINT_NAME +CONSTRAINT_SCHEMA +CONTAINS +CONTEXT +CONTINUE (R) +CONVERT (R) +CPU +CREATE (R) +CROSS (R) +CUBE +CURRENT +CURRENT_DATE (R) +CURRENT_TIME (R) +CURRENT_TIMESTAMP (R) +CURRENT_USER (R) +CURSOR (R) +CURSOR_NAME +DATA +DATABASE (R) +DATABASES (R) +DATAFILE +DATE +DATETIME +DAY +DAY_HOUR (R) +DAY_MICROSECOND (R) +DAY_MINUTE (R) +DAY_SECOND (R) +DEALLOCATE +DEC (R) +DECIMAL (R) +DECLARE (R) +DEFAULT (R) +DEFAULT_AUTH +DEFINER +DELAY_KEY_WRITE +DELAYED (R) +DELETE (R) +DES_KEY_FILE +DESC (R) +DESCRIBE (R) +DETERMINISTIC (R) +DIAGNOSTICS +DIRECTORY +DISABLE +DISABLE ON SLAVE +DISCARD +DISK +DISTINCT (R) +DISTINCTROW (R) +DIV (R) +DO +DOUBLE (R) +DROP (R) +DUAL (R) +DUMPFILE +DUPLICATE +DYNAMIC +EACH (R) +ELSE (R) +ELSEIF (R) +ENABLE +ENCLOSED (R) +END +ENDS +ENGINE +ENGINES +ENUM +ERROR +ERRORS +ESCAPE +ESCAPED (R) +EVENT +EVENTS +EVERY +EXCHANGE +EXECUTE +EXISTS (R) +EXIT (R) +EXPANSION +EXPIRE +EXPLAIN (R) +EXPORT +EXTENDED +EXTENT_SIZE +FALSE (R) +FAST +FAULTS +FETCH (R) +FIELDS +FILE +FILE_BLOCK_SIZE +FILTER +FIRST +FIXED +FLOAT (R) +FLOAT4 (R) +FLOAT8 (R) +FLUSH +FOLLOWS +FOR (R) +FORCE (R) +FOREIGN (R) +FORMAT +FOUND +FROM (R) +FULL +FULLTEXT (R) +FUNCTION +GENERAL +GENERATED (R) +GEOMETRY +GEOMETRYCOLLECTION +GET (R) +GET_FORMAT +GLOBAL +GRANT (R) +GRANTS +GROUP (R) +GROUP_REPLICATION +GTIDS +HANDLER +HASH +HAVING (R) +HELP +HIGH_PRIORITY (R) +HOST +HOSTS +HOUR +HOUR_MICROSECOND (R) +HOUR_MINUTE (R) +HOUR_SECOND (R) +IDENTIFIED +IDENTIFIED WITH (K) +IF (R) +IGNORE (R) +IGNORE_SERVER_IDS +IMPORT +IN (R) +INDEX (R) +INDEXES +INFILE (R) +INITIAL_SIZE +INNER (R) +INOUT (R) +INSENSITIVE (R) +INSERT (R) +INSERT_METHOD +INSTALL +INT (R) +INT1 (R) +INT2 (R) +INT3 (R) +INT4 (R) +INT8 (R) +INTEGER (R) +INTERVAL (R) +INTO (R) +INVOKER +INVISIBLE +IO +IO_AFTER_GTIDS (R) +IO_BEFORE_GTIDS (R) +IO_THREAD +IPC +IS (R) +ISOLATION +ISSUER +ITERATE (R) +JOIN (R) +KEY (R) +KEY_BLOCK_SIZE +KEYS (R) +KILL (R) +LANGUAGE +LAST +LEADING (R) +LEAVE (R) +LEAVES +LEFT (R) +LESS +LEVEL +LIKE (R) +LIMIT (R) +LINEAR (R) +LINES (R) +LINESTRING +LIST +LOAD (R) +LOCAL +LOCALTIME (R) +LOCALTIMESTAMP (R) +LOCK (R) +LOCKS +LOG +LOGFILE +LOGS +LONG (R) +LONGBLOB (R) +LONGTEXT (R) +LOOP (R) +LOW_PRIORITY (R) +MANUAL (R) +MASTER +MASTER_SERVER_ID +MATCH (R) +MAX_CONNECTIONS_PER_HOUR +MAX_QUERIES_PER_HOUR +MAX_ROWS +MAX_SIZE +MAX_STATEMENT_TIME +MAX_UPDATES_PER_HOUR +MAX_USER_CONNECTIONS +MAXVALUE (R) +MEDIUM +MEDIUMBLOB (R) +MEDIUMINT (R) +MEDIUMTEXT (R) +MEMORY +MERGE +MESSAGE_TEXT +MICROSECOND +MIDDLEINT (R) +MIGRATE +MIN_ROWS +MINUTE +MINUTE_MICROSECOND (R) +MINUTE_SECOND (R) +MOD (R) +MODE +MODIFIES (R) +MODIFY +MONTH +MULTILINESTRING +MULTIPOINT +MULTIPOLYGON +MUTEX +MYSQL_ERRNO +NAME +NAMES +NATIONAL +NATURAL (R) +NCHAR +NDB +NDBCLUSTER +NEVER +NEW +NEXT +NO +NO_WAIT +NO_WRITE_TO_BINLOG (R) +NODEGROUP +NONBLOCKING +NONE +NOT (R) +NULL (R) +NUMBER +NUMERIC (R) +NVARCHAR +OFFSET +OLD_PASSWORD +ON (R) +ON COMPLETION NOT PRESERVE +ON COMPLETION PRESERVE +ON SCHEDULE +ONE +ONLY +OPEN +OPTIMIZE (R) +OPTIMIZER_COSTS (R) +OPTION (R) +OPTIONALLY (R) +OPTIONS +OR (R) +ORDER (R) +OUT (R) +OUTER (R) +OUTFILE (R) +OVER (R) +OWNER +PACK_KEYS +PAGE +PARALLEL (R) +PARSE_GCOL_EXPR +PARSE_TREE +PARSER +PARTIAL +PARTITION (R) +PARTITIONING +PARTITIONS +PASSWORD +PERSIST +PERSIST_ONLY +PHASE +PLUGIN +PLUGIN_DIR +PLUGINS +POINT +POLYGON +PORT +PRECEDES +PRECISION (R) +PREPARE +PRESERVE +PREV +PRIMARY (R) +PRIVILEGES +PROCEDURE (R) +PROCESSLIST +PROFILE +PROFILES +PROXY +PURGE (R) +QUALIFY (R) +QUARTER +QUERY +QUICK +RANGE (R) +READ (R) +READ_ONLY +READ_WRITE (R) +READS (R) +REAL (R) +REBUILD +RECOVER +REDO_BUFFER_SIZE +REDOFILE +REDUNDANT +REFERENCES (R) +REGEXP (R) +RELAY +RELAY_LOG_FILE +RELAY_LOG_POS +RELAY_THREAD +RELAYLOG +RELEASE (R) +RELOAD +REMOVE +RENAME (R) +REORGANIZE +REPAIR +REPEAT (R) +REPEATABLE +REPLACE (R) +REPLICATE_DO_DB +REPLICATE_DO_TABLE +REPLICATE_IGNORE_DB +REPLICATE_IGNORE_TABLE +REPLICATE_REWRITE_DB +REPLICATE_WILD_DO_TABLE +REPLICATE_WILD_IGNORE_TABLE +REPLICATION +REQUIRE (R) +RESET +RESIGNAL (R) +RESTORE +RESTRICT (R) +RESUME +RETURN (R) +RETURNED_SQLSTATE +RETURNS +REVERSE +REVOKE (R) +RIGHT (R) +RLIKE (R) +ROLLBACK +ROLLUP +ROUTINE +ROW +ROW_COUNT +ROW_FORMAT +ROWS +RTREE +S3 +SAVEPOINT +SCHEDULE +SCHEMA (R) +SCHEMA_NAME +SCHEMAS (R) +SECOND +SECOND_MICROSECOND (R) +SECURITY +SELECT (R) +SENSITIVE (R) +SEPARATOR (R) +SERIAL +SERIALIZABLE +SERVER +SESSION +SET (R) +SHARE +SHOW (R) +SHUTDOWN +SIGNAL (R) +SIGNED +SIMPLE +SLAVE +SLOW +SMALLINT (R) +SNAPSHOT +SOCKET +SOME +SONAME +SOUNDS +SOURCE +SPATIAL (R) +SPECIFIC (R) +SQL (R) +SQL_AFTER_GTIDS +SQL_AFTER_MTS_GAPS +SQL_BEFORE_GTIDS +SQL_BIG_RESULT (R) +SQL_BUFFER_RESULT +SQL_CACHE +SQL_CALC_FOUND_ROWS (R) +SQL_NO_CACHE +SQL_SMALL_RESULT (R) +SQL_THREAD +SQL_TSI_DAY +SQL_TSI_HOUR +SQL_TSI_MINUTE +SQL_TSI_MONTH +SQL_TSI_QUARTER +SQL_TSI_SECOND +SQL_TSI_WEEK +SQL_TSI_YEAR +SQLEXCEPTION (R) +SQLSTATE (R) +SQLWARNING (R) +SSL (R) +STACKED +START +STARTING (R) +STARTS +STATS_AUTO_RECALC +STATS_PERSISTENT +STATS_SAMPLE_PAGES +STATUS +STOP +STORAGE +STORED (R) +STRAIGHT_JOIN (R) +STRING +SUBCLASS_ORIGIN +SUBJECT +SUBPARTITION +SUBPARTITIONS +SUPER +SUSPEND +SWAPS +SWITCHES +TABLE (R) +TABLE_CHECKSUM +TABLE_NAME +TABLES +TABLESAMPLE (R) +TABLESPACE +TEMPORARY +TEMPTABLE +TERMINATED (R) +TEXT +THAN +THEN (R) +TIME +TIMESTAMP +TIMESTAMPADD +TIMESTAMPDIFF +TINYBLOB (R) +TINYINT (R) +TINYTEXT (R) +TO (R) +TRAILING (R) +TRANSACTION +TRIGGER (R) +TRIGGERS +TRUE (R) +TRUNCATE +TYPE +TYPES +UNCOMMITTED +UNDEFINED +UNDO (R) +UNDO_BUFFER_SIZE +UNDOFILE +UNICODE +UNINSTALL +UNION (R) +UNIQUE (R) +UNKNOWN +UNLOCK (R) +UNSIGNED (R) +UNTIL +UPDATE (R) +UPGRADE +USAGE (R) +USE (R) +USE_FRM +USER +USER_RESOURCES +USING (R) +UTC_DATE (R) +UTC_TIME (R) +UTC_TIMESTAMP (R) +VALIDATION +VALUE +VALUES (R) +VARBINARY (R) +VARCHAR (R) +VARCHARACTER (R) +VARIABLES +VARYING (R) +VECTOR (R) +VIEW +VIRTUAL (R) +WAIT +WARNINGS +WEEK +WEIGHT_STRING +WHEN (R) +WHERE (R) +WHILE (R) +WITH (R) +WITH PARSER +WITHOUT +WORK +WRAPPER +WRITE (R) +X509 +XA +XID +XML +XOR (R) +YEAR +YEAR_MONTH (R) +ZEROFILL (R) diff --git a/tools/contexts/README.md b/tools/contexts/README.md index a065f211f..21526336b 100644 --- a/tools/contexts/README.md +++ b/tools/contexts/README.md @@ -1,6 +1,6 @@ # Context files -This files are used to generate `src/Contexts/*.php` files. +These files are used to generate `src/Contexts/*.php` files. You need to run `./tools/run_generators.sh` to generate/update them. The file `src/Tools/ContextGenerator.php` is responsible for building them. And the generated files are loaded and used by `src/Context.php`. @@ -18,7 +18,7 @@ For example: `tests/data/parser/parseSelectOverAlias_mariadb_100600.in`. ## Files structure The file `tools/contexts/_common.txt` contains all the data -that exists in all of the MariaDB and MySQL versions currently supported. +that exists in all the MariaDB and MySQL versions currently supported. Each `tools/contexts/_functions[MariaDb|MySql].txt` contains the functions supported in this version. diff --git a/tools/contexts/_common.txt b/tools/contexts/_common.txt index 93862d00a..cdec0b86a 100644 --- a/tools/contexts/_common.txt +++ b/tools/contexts/_common.txt @@ -15,6 +15,7 @@ CHARACTER SET CHARACTER VARYING (D) CHARSET COALESCE PARTITION +CONTAINS SQL CROSS JOIN DATA DIRECTORY DATE (D) @@ -60,6 +61,7 @@ INTEGER (D) INTERVAL (D) JSON (D) KEY (K) +LANGUAGE SQL LOAD DATA LEFT JOIN LEFT OUTER JOIN @@ -78,6 +80,7 @@ MEDIUMBLOB (D) MEDIUMINT (D) MEDIUMTEXT (D) MIDDLEINT (D) +MODIFIES SQL DATA MULTILINESTRING (D) MULTILINEPOINT (D) MULTILINEPOLYGON (D) @@ -91,6 +94,7 @@ NATURAL RIGHT JOIN NATURAL RIGHT OUTER JOIN NO ACTION NO RELEASE +NO SQL NOT NULL NUMERIC (D) ON DELETE @@ -103,6 +107,7 @@ POLYGON (D) POINT (D) PERSISTENT PRIMARY KEY (K) +READS SQL DATA REAL (D) RIGHT JOIN RIGHT OUTER JOIN @@ -139,7 +144,3 @@ WITH CONSISTENT SNAPSHOT WITH ROLLUP XML (D) YEAR (D) -CONTAINS SQL -NO SQL -READS SQL DATA -MODIFIES SQL DATA diff --git a/tools/contexts/_functionsMariaDb100000.txt b/tools/contexts/_functionsMariaDb100000.txt index f391c8e65..d3999aa28 100644 --- a/tools/contexts/_functionsMariaDb100000.txt +++ b/tools/contexts/_functionsMariaDb100000.txt @@ -17,11 +17,13 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +Buffer (F) CAST (F) CEIL (F) CEILING (F) @@ -33,6 +35,14 @@ CHARSET (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -48,11 +58,9 @@ CRC32 (F) Crosses (F) CURDATE (F) CURRENT_DATE (F) -CURRENT_DATE (F) -CURRENT_TIME (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) -CURRENT_TIMESTAMP (F) CURRENT_USER (F) CURTIME (F) DATABASE (F) @@ -67,6 +75,7 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) DEFAULT (F) DEGREES (F) DES_DECRYPT (F) @@ -89,6 +98,7 @@ FIND_IN_SET (F) FLOOR (F) FORMAT (F) FOUND_ROWS (F) +FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) GeomCollFromText (F) @@ -97,6 +107,7 @@ GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) @@ -111,6 +122,8 @@ HOUR (F) IF (F) IFNULL (F) IN (F) +INET6_ATON (F) +INET6_NTOA (F) INET_ATON (F) INET_NTOA (F) INSERT (F) @@ -119,12 +132,18 @@ InteriorRingN (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) +IS_IPV4 (F) +IS_IPV4_COMPAT (F) +IS_IPV4_MAPPED (F) +IS_IPV6 (F) IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) IsSimple (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) LCASE (F) LEAST (F) LEFT (F) @@ -132,12 +151,11 @@ LENGTH (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) LOCALTIME (F) -LOCALTIME (F) -LOCALTIMESTAMP (F) LOCALTIMESTAMP (F) LOCATE (F) LOG (F) @@ -149,6 +167,7 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) MAX (F) MBRContains (F) @@ -213,6 +232,9 @@ QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) @@ -236,6 +258,79 @@ SOUNDEX (F) SPACE (F) SQRT (F) SRID (F) +ST_Area (F) +ST_AsBinary (F) +ST_AsText (F) +ST_AsWKB (F) +ST_AsWKT (F) +ST_Buffer (F) +ST_Buffer_Strategy (F) +ST_Centroid (F) +ST_Contains (F) +ST_Crosses (F) +ST_Dimension (F) +ST_Disjoint (F) +ST_EndPoint (F) +ST_Envelope (F) +ST_Equals (F) +ST_ExteriorRing (F) +ST_GeomCollFromText (F) +ST_GeomCollFromTxt (F) +ST_GeomCollFromWKB (F) +ST_GeometryCollectionFromText (F) +ST_GeometryCollectionFromWKB (F) +ST_GeometryFromText (F) +ST_GeometryFromWKB (F) +ST_GeometryN (F) +ST_GeometryType (F) +ST_GeomFromText (F) +ST_GeomFromWKB (F) +ST_InteriorRingN (F) +ST_Intersection (F) +ST_Intersects (F) +ST_IsClosed (F) +ST_IsEmpty (F) +ST_IsSimple (F) +ST_IsValid (F) +ST_Length (F) +ST_LineFromText (F) +ST_LineFromWKB (F) +ST_LineString (F) +ST_LineStringFromText (F) +ST_LineStringFromWKB (F) +ST_MLineFromText (F) +ST_MLineFromWKB (F) +ST_MPointFromText (F) +ST_MPointFromWKB (F) +ST_MPolyFromText (F) +ST_MPolyFromWKB (F) +ST_MultiLineStringFromText (F) +ST_MultiLineStringFromWKB (F) +ST_MultiPointFromText (F) +ST_MultiPointFromWKB (F) +ST_MultiPolygonFromText (F) +ST_MultiPolygonFromWKB (F) +ST_NumGeometries (F) +ST_NumInteriorRings (F) +ST_NumPoints (F) +ST_Overlaps (F) +ST_PointFromText (F) +ST_PointFromWKB (F) +ST_PointN (F) +ST_PolyFromText (F) +ST_PolyFromWKB (F) +ST_PolygonFromText (F) +ST_PolygonFromWKB (F) +ST_Simplify (F) +ST_SRID (F) +ST_StartPoint (F) +ST_SymDifference (F) +ST_Touches (F) +ST_Union (F) +ST_Validate (F) +ST_Within (F) +ST_X (F) +ST_Y (F) StartPoint (F) STD (F) STDDEV (F) @@ -259,6 +354,7 @@ TIMEDIFF (F) TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) +TO_BASE64 (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) @@ -285,6 +381,7 @@ VERSION (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) +WEIGHT_STRING (F) Within (F) X (F) Y (F) diff --git a/tools/contexts/_functionsMariaDb100100.txt b/tools/contexts/_functionsMariaDb100100.txt index 3987552d0..bae71393d 100644 --- a/tools/contexts/_functionsMariaDb100100.txt +++ b/tools/contexts/_functionsMariaDb100100.txt @@ -4,7 +4,6 @@ ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,11 +17,13 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) CAST (F) CEIL (F) @@ -35,6 +36,14 @@ CHARSET (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -51,6 +60,7 @@ CRC32 (F) Crosses (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,6 +77,7 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) DEFAULT (F) DEGREES (F) DES_DECRYPT (F) @@ -99,6 +110,7 @@ GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) @@ -133,6 +145,7 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) @@ -159,7 +172,9 @@ JSON_STORAGE_SIZE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) LCASE (F) LEAST (F) LEFT (F) @@ -167,6 +182,7 @@ LENGTH (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,6 +198,7 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) MAX (F) MBRContains (F) @@ -237,6 +254,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -249,6 +267,9 @@ QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RANDOM_BYTES (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) @@ -280,6 +301,7 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) ST_Buffer_Strategy (F) ST_Centroid (F) @@ -302,6 +324,7 @@ ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,12 +335,14 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) ST_IsValid (F) ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) ST_LongFromGeoHash (F) ST_MakeEnvelope (F) @@ -341,6 +366,7 @@ ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) diff --git a/tools/contexts/_functionsMariaDb100200.txt b/tools/contexts/_functionsMariaDb100200.txt index 3987552d0..99e38c378 100644 --- a/tools/contexts/_functionsMariaDb100200.txt +++ b/tools/contexts/_functionsMariaDb100200.txt @@ -4,7 +4,6 @@ ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,11 +17,13 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) CAST (F) CEIL (F) @@ -35,6 +36,14 @@ CHARSET (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -49,8 +58,10 @@ COT (F) COUNT (F) CRC32 (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,13 +78,14 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) -Distance (F) ELT (F) ENCODE (F) ENCRYPT (F) @@ -99,6 +111,7 @@ GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) @@ -108,8 +121,6 @@ GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) IF (F) @@ -133,40 +144,49 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) JSON_OBJECT (F) -JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,14 +202,13 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) -MBRCovers (F) MBRDisjoint (F) MBREqual (F) -MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) @@ -220,6 +239,8 @@ MultiPolygonFromWKB (F) NAME_CONST (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) @@ -230,6 +251,7 @@ OLD_PASSWORD (F) ORD (F) Overlaps (F) PASSWORD (F) +PERCENT_RANK (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +259,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -249,8 +272,10 @@ QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) -RANDOM_BYTES (F) -RELEASE_ALL_LOCKS (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) @@ -258,6 +283,7 @@ REVERSE (F) RIGHT (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) @@ -276,12 +302,11 @@ SQRT (F) SRID (F) ST_Area (F) ST_AsBinary (F) -ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) ST_Contains (F) ST_ConvexHull (F) @@ -290,21 +315,19 @@ ST_Difference (F) ST_Dimension (F) ST_Disjoint (F) ST_Distance (F) -ST_Distance_Sphere (F) ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) -ST_GeomFromGeoJSON (F) ST_GeomFromText (F) ST_GeomFromWKB (F) ST_InteriorRingN (F) @@ -312,46 +335,30 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) -ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) -ST_MakeEnvelope (F) -ST_MLineFromText (F) -ST_MLineFromWKB (F) -ST_MPointFromText (F) -ST_MPointFromWKB (F) -ST_MPolyFromText (F) -ST_MPolyFromWKB (F) -ST_MultiLineStringFromText (F) -ST_MultiLineStringFromWKB (F) -ST_MultiPointFromText (F) -ST_MultiPointFromWKB (F) -ST_MultiPolygonFromText (F) -ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) ST_SymDifference (F) ST_Touches (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) @@ -397,14 +404,12 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) diff --git a/tools/contexts/_functionsMariaDb100300.txt b/tools/contexts/_functionsMariaDb100300.txt index 3987552d0..99f66bc77 100644 --- a/tools/contexts/_functionsMariaDb100300.txt +++ b/tools/contexts/_functionsMariaDb100300.txt @@ -4,7 +4,6 @@ ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,11 +17,13 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) CAST (F) CEIL (F) @@ -32,9 +33,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -49,8 +59,10 @@ COT (F) COUNT (F) CRC32 (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +79,22 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) -Distance (F) ELT (F) ENCODE (F) ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -99,6 +114,7 @@ GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) @@ -108,8 +124,6 @@ GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) IF (F) @@ -133,40 +147,56 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) +JSON_APPEND (F) JSON_ARRAY (F) +JSON_ARRAYAGG (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) JSON_STORAGE_SIZE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,10 +212,11 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) MBREqual (F) @@ -195,6 +226,7 @@ MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +250,26 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +277,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -249,8 +290,10 @@ QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) -RANDOM_BYTES (F) -RELEASE_ALL_LOCKS (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) @@ -258,12 +301,14 @@ REVERSE (F) RIGHT (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) SHA (F) SHA1 (F) SHA2 (F) @@ -280,8 +325,8 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) ST_Contains (F) ST_ConvexHull (F) @@ -295,13 +340,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +357,13 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,24 +378,23 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) ST_SymDifference (F) ST_Touches (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) @@ -383,6 +426,7 @@ TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,14 +441,12 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) diff --git a/tools/contexts/_functionsMariaDb100400.txt b/tools/contexts/_functionsMariaDb100400.txt index 3987552d0..cf43c1a48 100644 --- a/tools/contexts/_functionsMariaDb100400.txt +++ b/tools/contexts/_functionsMariaDb100400.txt @@ -4,7 +4,6 @@ ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +17,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +38,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -49,8 +64,10 @@ COT (F) COUNT (F) CRC32 (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +84,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,12 +106,14 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) @@ -103,15 +124,17 @@ GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +145,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +176,52 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) JSON_OBJECT (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +237,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +274,25 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +300,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -249,21 +313,26 @@ QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) -RANDOM_BYTES (F) -RELEASE_ALL_LOCKS (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) SHA (F) SHA1 (F) SHA2 (F) @@ -271,6 +340,7 @@ SIGN (F) SIN (F) SLEEP (F) SOUNDEX (F) +SOURCE_POS_WAIT (F) SPACE (F) SQRT (F) SRID (F) @@ -280,9 +350,10 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) +ST_Collect (F) ST_Contains (F) ST_ConvexHull (F) ST_Crosses (F) @@ -295,31 +366,34 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) +ST_FrechetDistance (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) ST_GeomFromText (F) ST_GeomFromWKB (F) +ST_HausdorffDistance (F) ST_InteriorRingN (F) ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineInterpolatePoint (F) +ST_LineInterpolatePoints (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +408,31 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) +ST_PointAtDistance (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -383,6 +460,7 @@ TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +475,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID (F) +WSREP_LAST_WRITTEN_GTID (F) +WSREP_SYNC_WAIT_UPTO_GTID (F) X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb100500.txt b/tools/contexts/_functionsMariaDb100500.txt index 3987552d0..5b6420bb6 100644 --- a/tools/contexts/_functionsMariaDb100500.txt +++ b/tools/contexts/_functionsMariaDb100500.txt @@ -4,7 +4,6 @@ ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +17,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +38,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -49,8 +64,10 @@ COT (F) COUNT (F) CRC32 (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +84,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +106,36 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +146,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +177,54 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +240,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +277,25 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +303,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -249,21 +316,27 @@ QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) -RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) SHA (F) SHA1 (F) SHA2 (F) @@ -271,6 +344,7 @@ SIGN (F) SIN (F) SLEEP (F) SOUNDEX (F) +SOURCE_POS_WAIT (F) SPACE (F) SQRT (F) SRID (F) @@ -280,9 +354,10 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) +ST_Collect (F) ST_Contains (F) ST_ConvexHull (F) ST_Crosses (F) @@ -295,31 +370,34 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) +ST_FrechetDistance (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) ST_GeomFromText (F) ST_GeomFromWKB (F) +ST_HausdorffDistance (F) ST_InteriorRingN (F) ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineInterpolatePoint (F) +ST_LineInterpolatePoints (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +412,31 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) +ST_PointAtDistance (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -383,6 +464,7 @@ TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +479,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb100600.txt b/tools/contexts/_functionsMariaDb100600.txt index 3987552d0..12de0f1af 100644 --- a/tools/contexts/_functionsMariaDb100600.txt +++ b/tools/contexts/_functionsMariaDb100600.txt @@ -1,10 +1,10 @@ ABS (F) ACOS (F) +ADD_MONTHS (F) ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +18,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +39,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -49,8 +65,10 @@ COT (F) COUNT (F) CRC32 (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +85,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +107,36 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +147,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +178,55 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +242,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +279,25 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +305,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -249,21 +318,27 @@ QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) -RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) SHA (F) SHA1 (F) SHA2 (F) @@ -271,6 +346,7 @@ SIGN (F) SIN (F) SLEEP (F) SOUNDEX (F) +SOURCE_POS_WAIT (F) SPACE (F) SQRT (F) SRID (F) @@ -280,9 +356,10 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) +ST_Collect (F) ST_Contains (F) ST_ConvexHull (F) ST_Crosses (F) @@ -295,13 +372,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +389,15 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineInterpolatePoint (F) +ST_LineInterpolatePoints (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +412,31 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) +ST_PointAtDistance (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -368,6 +449,7 @@ SUBSTRING (F) SUBSTRING_INDEX (F) SUBTIME (F) SUM (F) +SYS_GUID (F) SYSDATE (F) SYSTEM_USER (F) TAN (F) @@ -379,10 +461,12 @@ TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) TO_BASE64 (F) +TO_CHAR (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +481,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb100700.txt b/tools/contexts/_functionsMariaDb100700.txt index 3987552d0..d5346cc14 100644 --- a/tools/contexts/_functionsMariaDb100700.txt +++ b/tools/contexts/_functionsMariaDb100700.txt @@ -1,10 +1,10 @@ ABS (F) ACOS (F) +ADD_MONTHS (F) ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +18,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +39,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -49,8 +65,10 @@ COT (F) COUNT (F) CRC32 (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +85,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +107,36 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +147,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +178,57 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EQUALS (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) +JSON_NORMALIZE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +244,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +281,26 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NATURAL_SORT_KEY (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +308,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -249,21 +321,28 @@ QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) -RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) +SFORMAT (F) SHA (F) SHA1 (F) SHA2 (F) @@ -271,6 +350,7 @@ SIGN (F) SIN (F) SLEEP (F) SOUNDEX (F) +SOURCE_POS_WAIT (F) SPACE (F) SQRT (F) SRID (F) @@ -280,9 +360,10 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) +ST_Collect (F) ST_Contains (F) ST_ConvexHull (F) ST_Crosses (F) @@ -295,13 +376,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +393,15 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineInterpolatePoint (F) +ST_LineInterpolatePoints (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +416,31 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) +ST_PointAtDistance (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -368,6 +453,7 @@ SUBSTRING (F) SUBSTRING_INDEX (F) SUBTIME (F) SUM (F) +SYS_GUID (F) SYSDATE (F) SYSTEM_USER (F) TAN (F) @@ -379,10 +465,12 @@ TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) TO_BASE64 (F) +TO_CHAR (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +485,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb100800.txt b/tools/contexts/_functionsMariaDb100800.txt index 3987552d0..eea8ec9d6 100644 --- a/tools/contexts/_functionsMariaDb100800.txt +++ b/tools/contexts/_functionsMariaDb100800.txt @@ -1,10 +1,10 @@ ABS (F) ACOS (F) +ADD_MONTHS (F) ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +18,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +39,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -48,9 +64,12 @@ COS (F) COT (F) COUNT (F) CRC32 (F) +CRC32C (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +86,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +108,36 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +148,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +179,57 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EQUALS (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) +JSON_NORMALIZE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +245,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +282,26 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NATURAL_SORT_KEY (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +309,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -249,21 +322,28 @@ QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) -RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) +SFORMAT (F) SHA (F) SHA1 (F) SHA2 (F) @@ -271,6 +351,7 @@ SIGN (F) SIN (F) SLEEP (F) SOUNDEX (F) +SOURCE_POS_WAIT (F) SPACE (F) SQRT (F) SRID (F) @@ -280,9 +361,10 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) +ST_Collect (F) ST_Contains (F) ST_ConvexHull (F) ST_Crosses (F) @@ -295,13 +377,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +394,15 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineInterpolatePoint (F) +ST_LineInterpolatePoints (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +417,31 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) +ST_PointAtDistance (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -368,6 +454,7 @@ SUBSTRING (F) SUBSTRING_INDEX (F) SUBTIME (F) SUM (F) +SYS_GUID (F) SYSDATE (F) SYSTEM_USER (F) TAN (F) @@ -379,10 +466,12 @@ TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) TO_BASE64 (F) +TO_CHAR (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +486,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb100900.txt b/tools/contexts/_functionsMariaDb100900.txt index 3987552d0..e835ad955 100644 --- a/tools/contexts/_functionsMariaDb100900.txt +++ b/tools/contexts/_functionsMariaDb100900.txt @@ -1,10 +1,10 @@ ABS (F) ACOS (F) +ADD_MONTHS (F) ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +18,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +39,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -48,9 +64,12 @@ COS (F) COT (F) COUNT (F) CRC32 (F) +CRC32C (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +86,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +108,36 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +148,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +179,58 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EQUALS (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) +JSON_NORMALIZE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +246,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +283,26 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NATURAL_SORT_KEY (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +310,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -249,21 +323,28 @@ QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) -RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) +SFORMAT (F) SHA (F) SHA1 (F) SHA2 (F) @@ -271,6 +352,7 @@ SIGN (F) SIN (F) SLEEP (F) SOUNDEX (F) +SOURCE_POS_WAIT (F) SPACE (F) SQRT (F) SRID (F) @@ -280,8 +362,8 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) ST_Contains (F) ST_ConvexHull (F) @@ -295,13 +377,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +394,13 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +415,30 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -368,6 +451,7 @@ SUBSTRING (F) SUBSTRING_INDEX (F) SUBTIME (F) SUM (F) +SYS_GUID (F) SYSDATE (F) SYSTEM_USER (F) TAN (F) @@ -379,10 +463,12 @@ TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) TO_BASE64 (F) +TO_CHAR (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +483,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb101000.txt b/tools/contexts/_functionsMariaDb101000.txt index 3987552d0..9284484d4 100644 --- a/tools/contexts/_functionsMariaDb101000.txt +++ b/tools/contexts/_functionsMariaDb101000.txt @@ -1,10 +1,10 @@ ABS (F) ACOS (F) +ADD_MONTHS (F) ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +18,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +39,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -48,9 +64,12 @@ COS (F) COT (F) COUNT (F) CRC32 (F) +CRC32C (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +86,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +108,36 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +148,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +179,58 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EQUALS (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) +JSON_NORMALIZE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +246,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +283,26 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NATURAL_SORT_KEY (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +310,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -250,20 +324,28 @@ QUOTE (F) RADIANS (F) RAND (F) RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) +SFORMAT (F) SHA (F) SHA1 (F) SHA2 (F) @@ -271,6 +353,7 @@ SIGN (F) SIN (F) SLEEP (F) SOUNDEX (F) +SOURCE_POS_WAIT (F) SPACE (F) SQRT (F) SRID (F) @@ -280,8 +363,8 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) ST_Contains (F) ST_ConvexHull (F) @@ -295,13 +378,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +395,13 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +416,30 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -368,6 +452,7 @@ SUBSTRING (F) SUBSTRING_INDEX (F) SUBTIME (F) SUM (F) +SYS_GUID (F) SYSDATE (F) SYSTEM_USER (F) TAN (F) @@ -379,10 +464,12 @@ TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) TO_BASE64 (F) +TO_CHAR (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +484,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb101100.txt b/tools/contexts/_functionsMariaDb101100.txt index 3987552d0..94f698426 100644 --- a/tools/contexts/_functionsMariaDb101100.txt +++ b/tools/contexts/_functionsMariaDb101100.txt @@ -1,10 +1,10 @@ ABS (F) ACOS (F) +ADD_MONTHS (F) ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +18,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +39,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -48,9 +64,12 @@ COS (F) COT (F) COUNT (F) CRC32 (F) +CRC32C (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +86,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +108,36 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +148,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +179,58 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EQUALS (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) +JSON_NORMALIZE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +246,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +283,26 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NATURAL_SORT_KEY (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +310,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -250,20 +324,28 @@ QUOTE (F) RADIANS (F) RAND (F) RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) +SFORMAT (F) SHA (F) SHA1 (F) SHA2 (F) @@ -280,8 +362,8 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) ST_Contains (F) ST_ConvexHull (F) @@ -295,13 +377,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +394,13 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +415,31 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) +ST_Transform (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -368,6 +452,7 @@ SUBSTRING (F) SUBSTRING_INDEX (F) SUBTIME (F) SUM (F) +SYS_GUID (F) SYSDATE (F) SYSTEM_USER (F) TAN (F) @@ -379,10 +464,12 @@ TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) TO_BASE64 (F) +TO_CHAR (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +484,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb110000.txt b/tools/contexts/_functionsMariaDb110000.txt index 3987552d0..9eca855a0 100644 --- a/tools/contexts/_functionsMariaDb110000.txt +++ b/tools/contexts/_functionsMariaDb110000.txt @@ -1,10 +1,10 @@ ABS (F) ACOS (F) +ADD_MONTHS (F) ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +18,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +39,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -48,9 +64,12 @@ COS (F) COT (F) COUNT (F) CRC32 (F) +CRC32C (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +86,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +108,37 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) +FORMAT_PICO_TIME (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +149,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +180,58 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EQUALS (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) +JSON_NORMALIZE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +247,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +284,26 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NATURAL_SORT_KEY (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +311,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -250,20 +325,28 @@ QUOTE (F) RADIANS (F) RAND (F) RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) +SFORMAT (F) SHA (F) SHA1 (F) SHA2 (F) @@ -280,8 +363,8 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) ST_Contains (F) ST_ConvexHull (F) @@ -295,13 +378,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +395,13 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +416,31 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) +ST_Transform (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -368,6 +453,7 @@ SUBSTRING (F) SUBSTRING_INDEX (F) SUBTIME (F) SUM (F) +SYS_GUID (F) SYSDATE (F) SYSTEM_USER (F) TAN (F) @@ -379,10 +465,12 @@ TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) TO_BASE64 (F) +TO_CHAR (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +485,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb110100.txt b/tools/contexts/_functionsMariaDb110100.txt index 3987552d0..a683d9b59 100644 --- a/tools/contexts/_functionsMariaDb110100.txt +++ b/tools/contexts/_functionsMariaDb110100.txt @@ -1,10 +1,10 @@ ABS (F) ACOS (F) +ADD_MONTHS (F) ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +18,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +39,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -48,9 +64,12 @@ COS (F) COT (F) COUNT (F) CRC32 (F) +CRC32C (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +86,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +108,37 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) +FORMAT_PICO_TIME (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +149,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +180,59 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EQUALS (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) +JSON_NORMALIZE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) +JSON_SCHEMA_VALID (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +248,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +285,26 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NATURAL_SORT_KEY (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +312,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -250,20 +326,28 @@ QUOTE (F) RADIANS (F) RAND (F) RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) +SFORMAT (F) SHA (F) SHA1 (F) SHA2 (F) @@ -280,8 +364,8 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) ST_Contains (F) ST_ConvexHull (F) @@ -295,13 +379,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +396,13 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +417,31 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) +ST_Transform (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -368,6 +454,7 @@ SUBSTRING (F) SUBSTRING_INDEX (F) SUBTIME (F) SUM (F) +SYS_GUID (F) SYSDATE (F) SYSTEM_USER (F) TAN (F) @@ -379,10 +466,12 @@ TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) TO_BASE64 (F) +TO_CHAR (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +486,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb110200.txt b/tools/contexts/_functionsMariaDb110200.txt index 3987552d0..f48350f88 100644 --- a/tools/contexts/_functionsMariaDb110200.txt +++ b/tools/contexts/_functionsMariaDb110200.txt @@ -1,10 +1,10 @@ ABS (F) ACOS (F) +ADD_MONTHS (F) ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +18,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +39,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -48,9 +64,12 @@ COS (F) COT (F) COUNT (F) CRC32 (F) +CRC32C (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +86,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +108,37 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) +FORMAT_PICO_TIME (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +149,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +180,62 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAY_INTERSECT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EQUALS (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) +JSON_NORMALIZE (F) JSON_OBJECT (F) +JSON_OBJECT_FILTER_KEYS (F) +JSON_OBJECT_TO_ARRAY (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) +JSON_SCHEMA_VALID (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +251,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +288,26 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NATURAL_SORT_KEY (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +315,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -250,20 +329,28 @@ QUOTE (F) RADIANS (F) RAND (F) RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) +SFORMAT (F) SHA (F) SHA1 (F) SHA2 (F) @@ -280,8 +367,8 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) ST_Contains (F) ST_ConvexHull (F) @@ -295,13 +382,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +399,13 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +420,31 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) +ST_Transform (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -368,6 +457,7 @@ SUBSTRING (F) SUBSTRING_INDEX (F) SUBTIME (F) SUM (F) +SYS_GUID (F) SYSDATE (F) SYSTEM_USER (F) TAN (F) @@ -379,10 +469,12 @@ TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) TO_BASE64 (F) +TO_CHAR (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +489,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb110300.txt b/tools/contexts/_functionsMariaDb110300.txt index 3987552d0..04c062061 100644 --- a/tools/contexts/_functionsMariaDb110300.txt +++ b/tools/contexts/_functionsMariaDb110300.txt @@ -1,10 +1,10 @@ ABS (F) ACOS (F) +ADD_MONTHS (F) ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +18,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +39,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -48,9 +64,12 @@ COS (F) COT (F) COUNT (F) CRC32 (F) +CRC32C (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +86,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +108,37 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) +FORMAT_PICO_TIME (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +149,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +180,63 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAY_INTERSECT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EQUALS (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) +JSON_NORMALIZE (F) JSON_OBJECT (F) +JSON_OBJECT_FILTER_KEYS (F) +JSON_OBJECT_TO_ARRAY (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) +JSON_SCHEMA_VALID (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +KDF (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +252,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +289,26 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NATURAL_SORT_KEY (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +316,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -250,20 +330,28 @@ QUOTE (F) RADIANS (F) RAND (F) RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) +SFORMAT (F) SHA (F) SHA1 (F) SHA2 (F) @@ -280,8 +368,8 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) ST_Contains (F) ST_ConvexHull (F) @@ -295,13 +383,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +400,13 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +421,31 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) +ST_Transform (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -368,6 +458,7 @@ SUBSTRING (F) SUBSTRING_INDEX (F) SUBTIME (F) SUM (F) +SYS_GUID (F) SYSDATE (F) SYSTEM_USER (F) TAN (F) @@ -379,10 +470,12 @@ TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) TO_BASE64 (F) +TO_CHAR (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +490,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb110400.txt b/tools/contexts/_functionsMariaDb110400.txt index 3987552d0..04c062061 100644 --- a/tools/contexts/_functionsMariaDb110400.txt +++ b/tools/contexts/_functionsMariaDb110400.txt @@ -1,10 +1,10 @@ ABS (F) ACOS (F) +ADD_MONTHS (F) ADDDATE (F) ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) -ANY_VALUE (F) Area (F) AsBinary (F) ASCII (F) @@ -18,12 +18,19 @@ AVG (F) BENCHMARK (F) BIN (F) BINARY (F) +BINLOG_GTID_POS (F) BIT_AND (F) BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) +BOUNDARY (F) Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) @@ -32,9 +39,18 @@ CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) +CHR (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) +COLUMN_ADD (F) +COLUMN_CHECK (F) +COLUMN_CREATE (F) +COLUMN_DELETE (F) +COLUMN_EXISTS (F) +COLUMN_GET (F) +COLUMN_JSON (F) +COLUMN_LIST (F) COMPRESS (F) CONCAT (F) CONCAT_WS (F) @@ -48,9 +64,12 @@ COS (F) COT (F) COUNT (F) CRC32 (F) +CRC32C (F) Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,19 +86,21 @@ DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) DECODE (F) +DECODE_HISTOGRAM (F) +DECODE_ORACLE (F) DEFAULT (F) DEGREES (F) +DENSE_RANK (F) DES_DECRYPT (F) DES_ENCRYPT (F) Dimension (F) Disjoint (F) Distance (F) ELT (F) -ENCODE (F) -ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -87,31 +108,37 @@ EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) +FORMAT_PICO_TIME (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) +GeomCollection (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,6 +149,26 @@ INET_NTOA (F) INSERT (F) INSTR (F) InteriorRingN (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) Intersects (F) INTERVAL (F) IS_FREE_LOCK (F) @@ -133,40 +180,63 @@ IS_USED_LOCK (F) IsClosed (F) IsEmpty (F) ISNULL (F) +IsRing (F) IsSimple (F) JSON_ARRAY (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) +JSON_ARRAY_INTERSECT (F) +JSON_ARRAYAGG (F) +JSON_COMPACT (F) JSON_CONTAINS (F) JSON_CONTAINS_PATH (F) JSON_DEPTH (F) +JSON_DETAILED (F) +JSON_EQUALS (F) +JSON_EXISTS (F) JSON_EXTRACT (F) JSON_INSERT (F) JSON_KEYS (F) JSON_LENGTH (F) +JSON_LOOSE (F) JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) +JSON_NORMALIZE (F) JSON_OBJECT (F) +JSON_OBJECT_FILTER_KEYS (F) +JSON_OBJECT_TO_ARRAY (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) +JSON_QUERY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) +JSON_SCHEMA_VALID (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) -JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +KDF (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) +LASTVAL (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) +LENGTHB (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -182,19 +252,20 @@ LTRIM (F) MAKE_SET (F) MAKEDATE (F) MAKETIME (F) +MASTER_GTID_WAIT (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) -MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEDIAN (F) MICROSECOND (F) MID (F) MIN (F) @@ -218,18 +289,26 @@ MultiPolygon (F) MultiPolygonFromText (F) MultiPolygonFromWKB (F) NAME_CONST (F) +NATURAL_SORT_KEY (F) +NEXTVAL (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) NumGeometries (F) NumInteriorRings (F) NumPoints (F) +NVL (F) +NVL2 (F) OCT (F) OCTET_LENGTH (F) OLD_PASSWORD (F) ORD (F) Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) +PERCENTILE_CONT (F) +PERCENTILE_DISC (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) @@ -237,6 +316,7 @@ Point (F) PointFromText (F) PointFromWKB (F) PointN (F) +PointOnSurface (F) PolyFromText (F) PolyFromWKB (F) Polygon (F) @@ -250,20 +330,28 @@ QUOTE (F) RADIANS (F) RAND (F) RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SETVAL (F) +SFORMAT (F) SHA (F) SHA1 (F) SHA2 (F) @@ -280,8 +368,8 @@ ST_AsGeoJSON (F) ST_AsText (F) ST_AsWKB (F) ST_AsWKT (F) +ST_Boundary (F) ST_Buffer (F) -ST_Buffer_Strategy (F) ST_Centroid (F) ST_Contains (F) ST_ConvexHull (F) @@ -295,13 +383,13 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) -ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -312,14 +400,13 @@ ST_Intersection (F) ST_Intersects (F) ST_IsClosed (F) ST_IsEmpty (F) +ST_IsRing (F) ST_IsSimple (F) -ST_IsValid (F) -ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) -ST_LongFromGeoHash (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -334,28 +421,31 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) -ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) ST_PointN (F) +ST_PointOnSurface (F) ST_PolyFromText (F) ST_PolyFromWKB (F) ST_PolygonFromText (F) ST_PolygonFromWKB (F) -ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) +ST_Transform (F) ST_Union (F) -ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -368,6 +458,7 @@ SUBSTRING (F) SUBSTRING_INDEX (F) SUBTIME (F) SUM (F) +SYS_GUID (F) SYSDATE (F) SYSTEM_USER (F) TAN (F) @@ -379,10 +470,12 @@ TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) TO_BASE64 (F) +TO_CHAR (F) TO_DAYS (F) TO_SECONDS (F) Touches (F) TRIM (F) +TRIM_ORACLE (F) TRUNCATE (F) UCASE (F) UNCOMPRESS (F) @@ -397,19 +490,20 @@ UTC_TIME (F) UTC_TIMESTAMP (F) UUID (F) UUID_SHORT (F) -VALIDATE_PASSWORD_STRENGTH (F) +VALUE (F) VALUES (F) VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) -WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) Within (F) +WSREP_LAST_SEEN_GTID +WSREP_LAST_WRITTEN_GTID +WSREP_SYNC_WAIT_UPTO_GTID X (F) Y (F) YEAR (F) diff --git a/tools/contexts/_functionsMariaDb110500.txt b/tools/contexts/_functionsMariaDb110500.txt new file mode 100644 index 000000000..3987552d0 --- /dev/null +++ b/tools/contexts/_functionsMariaDb110500.txt @@ -0,0 +1,416 @@ +ABS (F) +ACOS (F) +ADDDATE (F) +ADDTIME (F) +AES_DECRYPT (F) +AES_ENCRYPT (F) +ANY_VALUE (F) +Area (F) +AsBinary (F) +ASCII (F) +ASIN (F) +AsText (F) +AsWKB (F) +AsWKT (F) +ATAN (F) +ATAN2 (F) +AVG (F) +BENCHMARK (F) +BIN (F) +BINARY (F) +BIT_AND (F) +BIT_COUNT (F) +BIT_LENGTH (F) +BIT_OR (F) +BIT_XOR (F) +Buffer (F) +CAST (F) +CEIL (F) +CEILING (F) +Centroid (F) +CHAR (F) +CHAR_LENGTH (F) +CHARACTER_LENGTH (F) +CHARSET (F) +COALESCE (F) +COERCIBILITY (F) +COLLATION (F) +COMPRESS (F) +CONCAT (F) +CONCAT_WS (F) +CONNECTION_ID (F) +Contains (F) +CONV (F) +CONVERT (F) +CONVERT_TZ (F) +ConvexHull (F) +COS (F) +COT (F) +COUNT (F) +CRC32 (F) +Crosses (F) +CURDATE (F) +CURRENT_DATE (F) +CURRENT_TIME (F) +CURRENT_TIMESTAMP (F) +CURRENT_USER (F) +CURTIME (F) +DATABASE (F) +DATE (F) +DATE_ADD (F) +DATE_FORMAT (F) +DATE_SUB (F) +DATEDIFF (F) +DAY (F) +DAYNAME (F) +DAYOFMONTH (F) +DAYOFWEEK (F) +DAYOFYEAR (F) +DECODE (F) +DEFAULT (F) +DEGREES (F) +DES_DECRYPT (F) +DES_ENCRYPT (F) +Dimension (F) +Disjoint (F) +Distance (F) +ELT (F) +ENCODE (F) +ENCRYPT (F) +EndPoint (F) +Envelope (F) +Equals (F) +EXP (F) +EXPORT_SET (F) +ExteriorRing (F) +EXTRACT (F) +ExtractValue (F) +FIELD (F) +FIND_IN_SET (F) +FLOOR (F) +FORMAT (F) +FOUND_ROWS (F) +FROM_BASE64 (F) +FROM_DAYS (F) +FROM_UNIXTIME (F) +GeomCollFromText (F) +GeomCollFromWKB (F) +GeometryCollection (F) +GeometryCollectionFromText (F) +GeometryCollectionFromWKB (F) +GeometryFromText (F) +GeometryN (F) +GeometryType (F) +GeomFromText (F) +GeomFromWKB (F) +GET_FORMAT (F) +GET_LOCK (F) +GLength (F) +GREATEST (F) +GROUP_CONCAT (F) +GTID_SUBSET (F) +GTID_SUBTRACT (F) +HEX (F) +HOUR (F) +IF (F) +IFNULL (F) +IN (F) +INET6_ATON (F) +INET6_NTOA (F) +INET_ATON (F) +INET_NTOA (F) +INSERT (F) +INSTR (F) +InteriorRingN (F) +Intersects (F) +INTERVAL (F) +IS_FREE_LOCK (F) +IS_IPV4 (F) +IS_IPV4_COMPAT (F) +IS_IPV4_MAPPED (F) +IS_IPV6 (F) +IS_USED_LOCK (F) +IsClosed (F) +IsEmpty (F) +ISNULL (F) +IsSimple (F) +JSON_ARRAY (F) +JSON_ARRAY_APPEND (F) +JSON_ARRAY_INSERT (F) +JSON_CONTAINS (F) +JSON_CONTAINS_PATH (F) +JSON_DEPTH (F) +JSON_EXTRACT (F) +JSON_INSERT (F) +JSON_KEYS (F) +JSON_LENGTH (F) +JSON_MERGE (F) +JSON_MERGE_PATCH (F) +JSON_MERGE_PRESERVE (F) +JSON_OBJECT (F) +JSON_PRETTY (F) +JSON_QUOTE (F) +JSON_REMOVE (F) +JSON_REPLACE (F) +JSON_SEARCH (F) +JSON_SET (F) +JSON_STORAGE_FREE (F) +JSON_STORAGE_SIZE (F) +JSON_TYPE (F) +JSON_UNQUOTE (F) +JSON_VALID (F) +LAST_INSERT_ID (F) +LCASE (F) +LEAST (F) +LEFT (F) +LENGTH (F) +LineFromText (F) +LineFromWKB (F) +LineString (F) +LineStringFromWKB (F) +LN (F) +LOAD_FILE (F) +LOCALTIME (F) +LOCALTIMESTAMP (F) +LOCATE (F) +LOG (F) +LOG10 (F) +LOG2 (F) +LOWER (F) +LPAD (F) +LTRIM (F) +MAKE_SET (F) +MAKEDATE (F) +MAKETIME (F) +MASTER_POS_WAIT (F) +MAX (F) +MBRContains (F) +MBRCoveredBy (F) +MBRCovers (F) +MBRDisjoint (F) +MBREqual (F) +MBREquals (F) +MBRIntersects (F) +MBROverlaps (F) +MBRTouches (F) +MBRWithin (F) +MD5 (F) +MICROSECOND (F) +MID (F) +MIN (F) +MINUTE (F) +MLineFromText (F) +MLineFromWKB (F) +MOD (F) +MONTH (F) +MONTHNAME (F) +MPointFromText (F) +MPointFromWKB (F) +MPolyFromText (F) +MPolyFromWKB (F) +MultiLineString (F) +MultiLineStringFromText (F) +MultiLineStringFromWKB (F) +MultiPoint (F) +MultiPointFromText (F) +MultiPointFromWKB (F) +MultiPolygon (F) +MultiPolygonFromText (F) +MultiPolygonFromWKB (F) +NAME_CONST (F) +NOT IN (F) +NOW (F) +NULLIF (F) +NumGeometries (F) +NumInteriorRings (F) +NumPoints (F) +OCT (F) +OCTET_LENGTH (F) +OLD_PASSWORD (F) +ORD (F) +Overlaps (F) +PASSWORD (F) +PERIOD_ADD (F) +PERIOD_DIFF (F) +PI (F) +Point (F) +PointFromText (F) +PointFromWKB (F) +PointN (F) +PolyFromText (F) +PolyFromWKB (F) +Polygon (F) +PolygonFromText (F) +PolygonFromWKB (F) +POSITION (F) +POW (F) +POWER (F) +QUARTER (F) +QUOTE (F) +RADIANS (F) +RAND (F) +RANDOM_BYTES (F) +RELEASE_ALL_LOCKS (F) +RELEASE_LOCK (F) +REPEAT (F) +REPLACE (F) +REVERSE (F) +RIGHT (F) +ROUND (F) +ROW_COUNT (F) +RPAD (F) +RTRIM (F) +SCHEMA (F) +SEC_TO_TIME (F) +SECOND (F) +SESSION_USER (F) +SHA (F) +SHA1 (F) +SHA2 (F) +SIGN (F) +SIN (F) +SLEEP (F) +SOUNDEX (F) +SPACE (F) +SQRT (F) +SRID (F) +ST_Area (F) +ST_AsBinary (F) +ST_AsGeoJSON (F) +ST_AsText (F) +ST_AsWKB (F) +ST_AsWKT (F) +ST_Buffer (F) +ST_Buffer_Strategy (F) +ST_Centroid (F) +ST_Contains (F) +ST_ConvexHull (F) +ST_Crosses (F) +ST_Difference (F) +ST_Dimension (F) +ST_Disjoint (F) +ST_Distance (F) +ST_Distance_Sphere (F) +ST_EndPoint (F) +ST_Envelope (F) +ST_Equals (F) +ST_ExteriorRing (F) +ST_GeoHash (F) +ST_GeomCollFromText (F) +ST_GeomCollFromTxt (F) +ST_GeomCollFromWKB (F) +ST_GeometryCollectionFromText (F) +ST_GeometryCollectionFromWKB (F) +ST_GeometryFromText (F) +ST_GeometryN (F) +ST_GeometryType (F) +ST_GeomFromGeoJSON (F) +ST_GeomFromText (F) +ST_GeomFromWKB (F) +ST_InteriorRingN (F) +ST_Intersection (F) +ST_Intersects (F) +ST_IsClosed (F) +ST_IsEmpty (F) +ST_IsSimple (F) +ST_IsValid (F) +ST_LatFromGeoHash (F) +ST_Length (F) +ST_LineFromText (F) +ST_LineFromWKB (F) +ST_LineStringFromWKB (F) +ST_LongFromGeoHash (F) +ST_MakeEnvelope (F) +ST_MLineFromText (F) +ST_MLineFromWKB (F) +ST_MPointFromText (F) +ST_MPointFromWKB (F) +ST_MPolyFromText (F) +ST_MPolyFromWKB (F) +ST_MultiLineStringFromText (F) +ST_MultiLineStringFromWKB (F) +ST_MultiPointFromText (F) +ST_MultiPointFromWKB (F) +ST_MultiPolygonFromText (F) +ST_MultiPolygonFromWKB (F) +ST_NumGeometries (F) +ST_NumInteriorRings (F) +ST_NumPoints (F) +ST_Overlaps (F) +ST_PointFromGeoHash (F) +ST_PointFromText (F) +ST_PointFromWKB (F) +ST_PointN (F) +ST_PolyFromText (F) +ST_PolyFromWKB (F) +ST_PolygonFromText (F) +ST_PolygonFromWKB (F) +ST_Simplify (F) +ST_SRID (F) +ST_StartPoint (F) +ST_SymDifference (F) +ST_Touches (F) +ST_Union (F) +ST_Validate (F) +ST_Within (F) +ST_X (F) +ST_Y (F) +StartPoint (F) +STD (F) +STDDEV (F) +STDDEV_POP (F) +STDDEV_SAMP (F) +STR_TO_DATE (F) +STRCMP (F) +SUBDATE (F) +SUBSTR (F) +SUBSTRING (F) +SUBSTRING_INDEX (F) +SUBTIME (F) +SUM (F) +SYSDATE (F) +SYSTEM_USER (F) +TAN (F) +TIME (F) +TIME_FORMAT (F) +TIME_TO_SEC (F) +TIMEDIFF (F) +TIMESTAMP (F) +TIMESTAMPADD (F) +TIMESTAMPDIFF (F) +TO_BASE64 (F) +TO_DAYS (F) +TO_SECONDS (F) +Touches (F) +TRIM (F) +TRUNCATE (F) +UCASE (F) +UNCOMPRESS (F) +UNCOMPRESSED_LENGTH (F) +UNHEX (F) +UNIX_TIMESTAMP (F) +UpdateXML (F) +UPPER (F) +USER (F) +UTC_DATE (F) +UTC_TIME (F) +UTC_TIMESTAMP (F) +UUID (F) +UUID_SHORT (F) +VALIDATE_PASSWORD_STRENGTH (F) +VALUES (F) +VAR_POP (F) +VAR_SAMP (F) +VARIANCE (F) +VERSION (F) +WAIT_FOR_EXECUTED_GTID_SET (F) +WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) +WEEK (F) +WEEKDAY (F) +WEEKOFYEAR (F) +WEIGHT_STRING (F) +Within (F) +X (F) +Y (F) +YEAR (F) +YEARWEEK (F) diff --git a/tools/contexts/_functionsMySql50000.txt b/tools/contexts/_functionsMySql50000.txt index d66b8c0e2..a8ba45c82 100644 --- a/tools/contexts/_functionsMySql50000.txt +++ b/tools/contexts/_functionsMySql50000.txt @@ -9,8 +9,10 @@ AsBinary (F) ASCII (F) ASIN (F) AsText (F) -ATAN2 (F) +AsWKB (F) +AsWKT (F) ATAN (F) +ATAN2 (F) AVG (F) BENCHMARK (F) BIN (F) @@ -24,21 +26,21 @@ CAST (F) CEIL (F) CEILING (F) Centroid (F) -CHAR_LENGTH (F) CHAR (F) +CHAR_LENGTH (F) CHARACTER_LENGTH (F) CHARSET (F) COALESCE (F) COERCIBILITY (F) COLLATION (F) COMPRESS (F) -CONCAT_WS (F) CONCAT (F) +CONCAT_WS (F) CONNECTION_ID (F) Contains (F) CONV (F) -CONVERT_TZ (F) CONVERT (F) +CONVERT_TZ (F) COS (F) COT (F) COUNT (F) @@ -51,10 +53,10 @@ CURRENT_TIMESTAMP (F) CURRENT_USER (F) CURTIME (F) DATABASE (F) +DATE (F) DATE_ADD (F) DATE_FORMAT (F) DATE_SUB (F) -DATE (F) DATEDIFF (F) DAY (F) DAYNAME (F) @@ -88,6 +90,10 @@ FROM_UNIXTIME (F) GeomCollFromText (F) GeomCollFromWKB (F) GeometryCollection (F) +GeometryCollectionFromText (F) +GeometryCollectionFromWKB (F) +GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) @@ -115,6 +121,7 @@ IsClosed (F) IsEmpty (F) ISNULL (F) IsSimple (F) +LAST_DAY (F) LAST_INSERT_ID (F) LCASE (F) LEAST (F) @@ -206,6 +213,7 @@ SCHEMA (F) SEC_TO_TIME (F) SECOND (F) SESSION_USER (F) +SHA (F) SHA1 (F) SIGN (F) SIN (F) diff --git a/tools/contexts/_functionsMySql50100.txt b/tools/contexts/_functionsMySql50100.txt index 2b62271fc..58e1e773a 100644 --- a/tools/contexts/_functionsMySql50100.txt +++ b/tools/contexts/_functionsMySql50100.txt @@ -63,7 +63,7 @@ DAYNAME (F) DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) -DECOD (F) +DECODE (F) DEFAULT (F) DEGREES (F) DES_DECRYPT (F) @@ -94,6 +94,7 @@ GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) @@ -121,6 +122,7 @@ IsClosed (F) IsEmpty (F) ISNULL (F) IsSimple (F) +LAST_DAY (F) LAST_INSERT_ID (F) LCASE (F) LEAST (F) @@ -129,6 +131,7 @@ LENGTH (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) diff --git a/tools/contexts/_functionsMySql50500.txt b/tools/contexts/_functionsMySql50500.txt index f391c8e65..0eaced5ed 100644 --- a/tools/contexts/_functionsMySql50500.txt +++ b/tools/contexts/_functionsMySql50500.txt @@ -48,11 +48,8 @@ CRC32 (F) Crosses (F) CURDATE (F) CURRENT_DATE (F) -CURRENT_DATE (F) -CURRENT_TIME (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) -CURRENT_TIMESTAMP (F) CURRENT_USER (F) CURTIME (F) DATABASE (F) @@ -97,6 +94,7 @@ GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) @@ -124,6 +122,7 @@ IsClosed (F) IsEmpty (F) ISNULL (F) IsSimple (F) +LAST_DAY (F) LAST_INSERT_ID (F) LCASE (F) LEAST (F) @@ -132,12 +131,11 @@ LENGTH (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) LOCALTIME (F) -LOCALTIME (F) -LOCALTIMESTAMP (F) LOCALTIMESTAMP (F) LOCATE (F) LOG (F) diff --git a/tools/contexts/_functionsMySql50600.txt b/tools/contexts/_functionsMySql50600.txt index 89f8b5694..ef6f70b10 100644 --- a/tools/contexts/_functionsMySql50600.txt +++ b/tools/contexts/_functionsMySql50600.txt @@ -11,11 +11,6 @@ ASIN (F) AsText (F) AsWKB (F) AsWKT (F) -ASYMMETRIC_DECRYPT (F) -ASYMMETRIC_DERIVE (F) -ASYMMETRIC_ENCRYPT (F) -ASYMMETRIC_SIGN (F) -ASYMMETRIC_VERIFY (F) ATAN (F) ATAN2 (F) AVG (F) @@ -51,10 +46,6 @@ COS (F) COT (F) COUNT (F) CRC32 (F) -CREATE_ASYMMETRIC_PRIV_KEY (F) -CREATE_ASYMMETRIC_PUB_KEY (F) -CREATE_DH_PARAMETERS (F) -CREATE_DIGEST (F) Crosses (F) CURDATE (F) CURRENT_DATE (F) @@ -105,6 +96,7 @@ GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) @@ -140,6 +132,7 @@ IsClosed (F) IsEmpty (F) ISNULL (F) IsSimple (F) +LAST_DAY (F) LAST_INSERT_ID (F) LCASE (F) LEAST (F) @@ -148,6 +141,7 @@ LENGTH (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -164,6 +158,7 @@ MAKE_SET (F) MAKEDATE (F) MAKETIME (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) MBRDisjoint (F) @@ -275,6 +270,7 @@ ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromText (F) @@ -287,8 +283,10 @@ ST_IsEmpty (F) ST_IsSimple (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) @@ -355,6 +353,7 @@ VAR_POP (F) VAR_SAMP (F) VARIANCE (F) VERSION (F) +WAIT_FOR_EXECUTED_GTID_SET (F) WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) diff --git a/tools/contexts/_functionsMySql50700.txt b/tools/contexts/_functionsMySql50700.txt index 3987552d0..0ca515529 100644 --- a/tools/contexts/_functionsMySql50700.txt +++ b/tools/contexts/_functionsMySql50700.txt @@ -80,6 +80,7 @@ ENCRYPT (F) EndPoint (F) Envelope (F) Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) ExteriorRing (F) @@ -99,6 +100,7 @@ GeometryCollection (F) GeometryCollectionFromText (F) GeometryCollectionFromWKB (F) GeometryFromText (F) +GeometryFromWKB (F) GeometryN (F) GeometryType (F) GeomFromText (F) @@ -134,7 +136,9 @@ IsClosed (F) IsEmpty (F) ISNULL (F) IsSimple (F) +JSON_APPEND (F) JSON_ARRAY (F) +JSON_ARRAYAGG (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) JSON_CONTAINS (F) @@ -148,17 +152,18 @@ JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) JSON_PRETTY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) JSON_SEARCH (F) JSON_SET (F) -JSON_STORAGE_FREE (F) JSON_STORAGE_SIZE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +LAST_DAY (F) LAST_INSERT_ID (F) LCASE (F) LEAST (F) @@ -167,6 +172,7 @@ LENGTH (F) LineFromText (F) LineFromWKB (F) LineString (F) +LineStringFromText (F) LineStringFromWKB (F) LN (F) LOAD_FILE (F) @@ -183,6 +189,7 @@ MAKE_SET (F) MAKEDATE (F) MAKETIME (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) MBRCoveredBy (F) @@ -226,7 +233,6 @@ NumInteriorRings (F) NumPoints (F) OCT (F) OCTET_LENGTH (F) -OLD_PASSWORD (F) ORD (F) Overlaps (F) PASSWORD (F) @@ -302,6 +308,7 @@ ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) @@ -318,6 +325,7 @@ ST_LatFromGeoHash (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) ST_LongFromGeoHash (F) ST_MakeEnvelope (F) @@ -334,6 +342,7 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) diff --git a/tools/contexts/_functionsMySql80000.txt b/tools/contexts/_functionsMySql80000.txt index cf12b5958..0c37a52c2 100644 --- a/tools/contexts/_functionsMySql80000.txt +++ b/tools/contexts/_functionsMySql80000.txt @@ -5,13 +5,13 @@ ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) ANY_VALUE (F) -Area (F) -AsBinary (F) ASCII (F) ASIN (F) -AsText (F) -AsWKB (F) -AsWKT (F) +asynchronous_connection_failover_add_managed (F) +asynchronous_connection_failover_add_source (F) +asynchronous_connection_failover_delete_managed (F) +asynchronous_connection_failover_delete_source (F) +asynchronous_connection_failover_reset (F) ATAN (F) ATAN2 (F) AVG (F) @@ -24,11 +24,14 @@ BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) -Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) -Centroid (F) CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) @@ -40,18 +43,17 @@ COMPRESS (F) CONCAT (F) CONCAT_WS (F) CONNECTION_ID (F) -Contains (F) CONV (F) CONVERT (F) CONVERT_TZ (F) -ConvexHull (F) COS (F) COT (F) COUNT (F) CRC32 (F) -Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,52 +69,51 @@ DAYNAME (F) DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) -DECODE (F) DEFAULT (F) DEGREES (F) -DES_DECRYPT (F) -DES_ENCRYPT (F) -Dimension (F) -Disjoint (F) -Distance (F) +DENSE_RANK (F) ELT (F) -ENCODE (F) -ENCRYPT (F) -EndPoint (F) -Envelope (F) -Equals (F) +EXISTS (F) EXP (F) EXPORT_SET (F) -ExteriorRing (F) EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) +FORMAT_BYTES (F) +FORMAT_PICO_TIME (F) FOUND_ROWS (F) FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) -GeomCollFromText (F) -GeomCollFromWKB (F) +GeomCollection (F) GeometryCollection (F) -GeometryCollectionFromText (F) -GeometryCollectionFromWKB (F) -GeometryFromText (F) -GeometryN (F) -GeometryType (F) -GeomFromText (F) -GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) -GLength (F) GREATEST (F) GROUP_CONCAT (F) +GROUPING (F) +group_replication_disable_member_action (F) +group_replication_enable_member_action (F) +group_replication_get_communication_protocol (F) +group_replication_get_write_concurrency (F) +group_replication_reset_member_actions (F) +group_replication_set_as_primary (F) +group_replication_set_communication_protocol (F) +group_replication_set_write_concurrency (F) +group_replication_switch_to_multi_primary_mode (F) +group_replication_switch_to_single_primary_mode (F) GTID_SUBSET (F) GTID_SUBTRACT (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) @@ -122,8 +123,26 @@ INET_ATON (F) INET_NTOA (F) INSERT (F) INSTR (F) -InteriorRingN (F) -Intersects (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) INTERVAL (F) IS_FREE_LOCK (F) IS_IPV4 (F) @@ -132,11 +151,9 @@ IS_IPV4_MAPPED (F) IS_IPV6 (F) IS_USED_LOCK (F) IS_UUID (F) -IsClosed (F) -IsEmpty (F) ISNULL (F) -IsSimple (F) JSON_ARRAY (F) +JSON_ARRAYAGG (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) JSON_CONTAINS (F) @@ -150,26 +167,33 @@ JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) +JSON_SCHEMA_VALID (F) +JSON_SCHEMA_VALIDATION_REPORT (F) JSON_SEARCH (F) JSON_SET (F) JSON_STORAGE_FREE (F) JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) -LineFromText (F) -LineFromWKB (F) LineString (F) -LineStringFromWKB (F) LN (F) LOAD_FILE (F) LOCALTIME (F) @@ -185,81 +209,69 @@ MAKE_SET (F) MAKEDATE (F) MAKETIME (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEMBER OF (F) MICROSECOND (F) MID (F) MIN (F) MINUTE (F) -MLineFromText (F) -MLineFromWKB (F) MOD (F) MONTH (F) MONTHNAME (F) -MPointFromText (F) -MPointFromWKB (F) -MPolyFromText (F) -MPolyFromWKB (F) MultiLineString (F) -MultiLineStringFromText (F) -MultiLineStringFromWKB (F) MultiPoint (F) -MultiPointFromText (F) -MultiPointFromWKB (F) MultiPolygon (F) -MultiPolygonFromText (F) -MultiPolygonFromWKB (F) NAME_CONST (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) -NumGeometries (F) -NumInteriorRings (F) -NumPoints (F) OCT (F) OCTET_LENGTH (F) -OLD_PASSWORD (F) ORD (F) -Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) Point (F) -PointFromText (F) -PointFromWKB (F) -PointN (F) -PolyFromText (F) -PolyFromWKB (F) Polygon (F) -PolygonFromText (F) -PolygonFromWKB (F) POSITION (F) POW (F) POWER (F) +PS_CURRENT_THREAD_ID (F) +PS_THREAD_ID (F) QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_LIKE (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) @@ -273,9 +285,9 @@ SIGN (F) SIN (F) SLEEP (F) SOUNDEX (F) +SOURCE_POS_WAIT (F) SPACE (F) SQRT (F) -SRID (F) ST_Area (F) ST_AsBinary (F) ST_AsGeoJSON (F) @@ -285,6 +297,7 @@ ST_AsWKT (F) ST_Buffer (F) ST_Buffer_Strategy (F) ST_Centroid (F) +ST_Collect (F) ST_Contains (F) ST_ConvexHull (F) ST_Crosses (F) @@ -297,6 +310,7 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) +ST_FrechetDistance (F) ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) @@ -304,11 +318,13 @@ ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) ST_GeomFromText (F) ST_GeomFromWKB (F) +ST_HausdorffDistance (F) ST_InteriorRingN (F) ST_Intersection (F) ST_Intersects (F) @@ -317,11 +333,16 @@ ST_IsEmpty (F) ST_IsSimple (F) ST_IsValid (F) ST_LatFromGeoHash (F) +ST_Latitude (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineInterpolatePoint (F) +ST_LineInterpolatePoints (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) ST_LongFromGeoHash (F) +ST_Longitude (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -336,9 +357,11 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) +ST_PointAtDistance (F) ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) @@ -350,14 +373,17 @@ ST_PolygonFromWKB (F) ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) +ST_Transform (F) ST_Union (F) ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) -StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -383,7 +409,6 @@ TIMESTAMPDIFF (F) TO_BASE64 (F) TO_DAYS (F) TO_SECONDS (F) -Touches (F) TRIM (F) TRUNCATE (F) UCASE (F) @@ -412,8 +437,5 @@ WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) -Within (F) -X (F) -Y (F) YEAR (F) YEARWEEK (F) diff --git a/tools/contexts/_functionsMySql80100.txt b/tools/contexts/_functionsMySql80100.txt index cf12b5958..015fb61f3 100644 --- a/tools/contexts/_functionsMySql80100.txt +++ b/tools/contexts/_functionsMySql80100.txt @@ -5,13 +5,13 @@ ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) ANY_VALUE (F) -Area (F) -AsBinary (F) ASCII (F) ASIN (F) -AsText (F) -AsWKB (F) -AsWKT (F) +asynchronous_connection_failover_add_managed (F) +asynchronous_connection_failover_add_source (F) +asynchronous_connection_failover_delete_managed (F) +asynchronous_connection_failover_delete_source (F) +asynchronous_connection_failover_reset (F) ATAN (F) ATAN2 (F) AVG (F) @@ -24,11 +24,14 @@ BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) -Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) -Centroid (F) CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) @@ -40,18 +43,17 @@ COMPRESS (F) CONCAT (F) CONCAT_WS (F) CONNECTION_ID (F) -Contains (F) CONV (F) CONVERT (F) CONVERT_TZ (F) -ConvexHull (F) COS (F) COT (F) COUNT (F) CRC32 (F) -Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,76 +69,81 @@ DAYNAME (F) DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) -DECODE (F) DEFAULT (F) DEGREES (F) -DES_DECRYPT (F) -DES_ENCRYPT (F) -Dimension (F) -Disjoint (F) -Distance (F) +DENSE_RANK (F) ELT (F) -ENCODE (F) -ENCRYPT (F) -EndPoint (F) -Envelope (F) -Equals (F) EXP (F) EXPORT_SET (F) -ExteriorRing (F) EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) +FORMAT_BYTES (F) +FORMAT_PICO_TIME (F) FOUND_ROWS (F) -FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) -GeomCollFromText (F) -GeomCollFromWKB (F) +GeomCollection (F) GeometryCollection (F) -GeometryCollectionFromText (F) -GeometryCollectionFromWKB (F) -GeometryFromText (F) -GeometryN (F) -GeometryType (F) -GeomFromText (F) -GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) -GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) +GROUPING (F) +group_replication_disable_member_action (F) +group_replication_enable_member_action (F) +group_replication_get_communication_protocol (F) +group_replication_get_write_concurrency (F) +group_replication_reset_member_actions (F) +group_replication_set_as_primary (F) +group_replication_set_communication_protocol (F) +group_replication_set_write_concurrency (F) +group_replication_switch_to_multi_primary_mode (F) +group_replication_switch_to_single_primary_mode (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) -INET6_ATON (F) -INET6_NTOA (F) INET_ATON (F) INET_NTOA (F) INSERT (F) INSTR (F) -InteriorRingN (F) -Intersects (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) INTERVAL (F) IS_FREE_LOCK (F) -IS_IPV4 (F) -IS_IPV4_COMPAT (F) -IS_IPV4_MAPPED (F) -IS_IPV6 (F) IS_USED_LOCK (F) IS_UUID (F) -IsClosed (F) -IsEmpty (F) ISNULL (F) -IsSimple (F) JSON_ARRAY (F) +JSON_ARRAYAGG (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) JSON_CONTAINS (F) @@ -150,26 +157,33 @@ JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) +JSON_SCHEMA_VALID (F) +JSON_SCHEMA_VALIDATION_REPORT (F) JSON_SEARCH (F) JSON_SET (F) JSON_STORAGE_FREE (F) JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) -LineFromText (F) -LineFromWKB (F) LineString (F) -LineStringFromWKB (F) LN (F) LOAD_FILE (F) LOCALTIME (F) @@ -185,81 +199,69 @@ MAKE_SET (F) MAKEDATE (F) MAKETIME (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEMBER OF (F) MICROSECOND (F) MID (F) MIN (F) MINUTE (F) -MLineFromText (F) -MLineFromWKB (F) MOD (F) MONTH (F) MONTHNAME (F) -MPointFromText (F) -MPointFromWKB (F) -MPolyFromText (F) -MPolyFromWKB (F) MultiLineString (F) -MultiLineStringFromText (F) -MultiLineStringFromWKB (F) MultiPoint (F) -MultiPointFromText (F) -MultiPointFromWKB (F) MultiPolygon (F) -MultiPolygonFromText (F) -MultiPolygonFromWKB (F) NAME_CONST (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) -NumGeometries (F) -NumInteriorRings (F) -NumPoints (F) OCT (F) OCTET_LENGTH (F) -OLD_PASSWORD (F) ORD (F) -Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) Point (F) -PointFromText (F) -PointFromWKB (F) -PointN (F) -PolyFromText (F) -PolyFromWKB (F) Polygon (F) -PolygonFromText (F) -PolygonFromWKB (F) POSITION (F) POW (F) POWER (F) +PS_CURRENT_THREAD_ID (F) +PS_THREAD_ID (F) QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_LIKE (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) @@ -273,9 +275,9 @@ SIGN (F) SIN (F) SLEEP (F) SOUNDEX (F) +SOURCE_POS_WAIT (F) SPACE (F) SQRT (F) -SRID (F) ST_Area (F) ST_AsBinary (F) ST_AsGeoJSON (F) @@ -285,6 +287,7 @@ ST_AsWKT (F) ST_Buffer (F) ST_Buffer_Strategy (F) ST_Centroid (F) +ST_Collect (F) ST_Contains (F) ST_ConvexHull (F) ST_Crosses (F) @@ -297,6 +300,7 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) +ST_FrechetDistance (F) ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) @@ -304,11 +308,13 @@ ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) ST_GeomFromText (F) ST_GeomFromWKB (F) +ST_HausdorffDistance (F) ST_InteriorRingN (F) ST_Intersection (F) ST_Intersects (F) @@ -317,11 +323,16 @@ ST_IsEmpty (F) ST_IsSimple (F) ST_IsValid (F) ST_LatFromGeoHash (F) +ST_Latitude (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineInterpolatePoint (F) +ST_LineInterpolatePoints (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) ST_LongFromGeoHash (F) +ST_Longitude (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -336,9 +347,11 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) +ST_PointAtDistance (F) ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) @@ -350,14 +363,17 @@ ST_PolygonFromWKB (F) ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) +ST_Transform (F) ST_Union (F) ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) -StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -380,10 +396,8 @@ TIMEDIFF (F) TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) -TO_BASE64 (F) TO_DAYS (F) TO_SECONDS (F) -Touches (F) TRIM (F) TRUNCATE (F) UCASE (F) @@ -412,8 +426,5 @@ WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) -Within (F) -X (F) -Y (F) YEAR (F) YEARWEEK (F) diff --git a/tools/contexts/_functionsMySql80200.txt b/tools/contexts/_functionsMySql80200.txt index cf12b5958..76df8c0e7 100644 --- a/tools/contexts/_functionsMySql80200.txt +++ b/tools/contexts/_functionsMySql80200.txt @@ -5,13 +5,13 @@ ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) ANY_VALUE (F) -Area (F) -AsBinary (F) ASCII (F) ASIN (F) -AsText (F) -AsWKB (F) -AsWKT (F) +asynchronous_connection_failover_add_managed (F) +asynchronous_connection_failover_add_source (F) +asynchronous_connection_failover_delete_managed (F) +asynchronous_connection_failover_delete_source (F) +asynchronous_connection_failover_reset (F) ATAN (F) ATAN2 (F) AVG (F) @@ -24,11 +24,14 @@ BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) -Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) -Centroid (F) CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) @@ -40,18 +43,17 @@ COMPRESS (F) CONCAT (F) CONCAT_WS (F) CONNECTION_ID (F) -Contains (F) CONV (F) CONVERT (F) CONVERT_TZ (F) -ConvexHull (F) COS (F) COT (F) COUNT (F) CRC32 (F) -Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,76 +69,81 @@ DAYNAME (F) DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) -DECODE (F) DEFAULT (F) DEGREES (F) -DES_DECRYPT (F) -DES_ENCRYPT (F) -Dimension (F) -Disjoint (F) -Distance (F) +DENSE_RANK (F) ELT (F) -ENCODE (F) -ENCRYPT (F) -EndPoint (F) -Envelope (F) -Equals (F) EXP (F) EXPORT_SET (F) -ExteriorRing (F) EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) +FORMAT_BYTES (F) +FORMAT_PICO_TIME (F) FOUND_ROWS (F) -FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) -GeomCollFromText (F) -GeomCollFromWKB (F) +GeomCollection (F) GeometryCollection (F) -GeometryCollectionFromText (F) -GeometryCollectionFromWKB (F) -GeometryFromText (F) -GeometryN (F) -GeometryType (F) -GeomFromText (F) -GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) -GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) +GROUPING (F) +group_replication_disable_member_action (F) +group_replication_enable_member_action (F) +group_replication_get_communication_protocol (F) +group_replication_get_write_concurrency (F) +group_replication_reset_member_actions (F) +group_replication_set_as_primary (F) +group_replication_set_communication_protocol (F) +group_replication_set_write_concurrency (F) +group_replication_switch_to_multi_primary_mode (F) +group_replication_switch_to_single_primary_mode (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) -INET6_ATON (F) -INET6_NTOA (F) INET_ATON (F) INET_NTOA (F) INSERT (F) INSTR (F) -InteriorRingN (F) -Intersects (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) INTERVAL (F) IS_FREE_LOCK (F) -IS_IPV4 (F) -IS_IPV4_COMPAT (F) -IS_IPV4_MAPPED (F) -IS_IPV6 (F) IS_USED_LOCK (F) IS_UUID (F) -IsClosed (F) -IsEmpty (F) ISNULL (F) -IsSimple (F) JSON_ARRAY (F) +JSON_ARRAYAGG (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) JSON_CONTAINS (F) @@ -150,26 +157,33 @@ JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) +JSON_SCHEMA_VALID (F) +JSON_SCHEMA_VALIDATION_REPORT (F) JSON_SEARCH (F) JSON_SET (F) JSON_STORAGE_FREE (F) JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) -LineFromText (F) -LineFromWKB (F) LineString (F) -LineStringFromWKB (F) LN (F) LOAD_FILE (F) LOCALTIME (F) @@ -185,81 +199,69 @@ MAKE_SET (F) MAKEDATE (F) MAKETIME (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEMBER OF (F) MICROSECOND (F) MID (F) MIN (F) MINUTE (F) -MLineFromText (F) -MLineFromWKB (F) MOD (F) MONTH (F) MONTHNAME (F) -MPointFromText (F) -MPointFromWKB (F) -MPolyFromText (F) -MPolyFromWKB (F) MultiLineString (F) -MultiLineStringFromText (F) -MultiLineStringFromWKB (F) MultiPoint (F) -MultiPointFromText (F) -MultiPointFromWKB (F) MultiPolygon (F) -MultiPolygonFromText (F) -MultiPolygonFromWKB (F) NAME_CONST (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) -NumGeometries (F) -NumInteriorRings (F) -NumPoints (F) OCT (F) OCTET_LENGTH (F) -OLD_PASSWORD (F) ORD (F) -Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) Point (F) -PointFromText (F) -PointFromWKB (F) -PointN (F) -PolyFromText (F) -PolyFromWKB (F) Polygon (F) -PolygonFromText (F) -PolygonFromWKB (F) POSITION (F) POW (F) POWER (F) +PS_CURRENT_THREAD_ID (F) +PS_THREAD_ID (F) QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_LIKE (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) @@ -273,9 +275,9 @@ SIGN (F) SIN (F) SLEEP (F) SOUNDEX (F) +SOURCE_POS_WAIT (F) SPACE (F) SQRT (F) -SRID (F) ST_Area (F) ST_AsBinary (F) ST_AsGeoJSON (F) @@ -285,6 +287,7 @@ ST_AsWKT (F) ST_Buffer (F) ST_Buffer_Strategy (F) ST_Centroid (F) +ST_Collect (F) ST_Contains (F) ST_ConvexHull (F) ST_Crosses (F) @@ -297,6 +300,7 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) +ST_FrechetDistance (F) ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) @@ -304,11 +308,13 @@ ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) ST_GeomFromText (F) ST_GeomFromWKB (F) +ST_HausdorffDistance (F) ST_InteriorRingN (F) ST_Intersection (F) ST_Intersects (F) @@ -317,11 +323,16 @@ ST_IsEmpty (F) ST_IsSimple (F) ST_IsValid (F) ST_LatFromGeoHash (F) +ST_Latitude (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineInterpolatePoint (F) +ST_LineInterpolatePoints (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) ST_LongFromGeoHash (F) +ST_Longitude (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -336,9 +347,11 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) +ST_PointAtDistance (F) ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) @@ -350,14 +363,17 @@ ST_PolygonFromWKB (F) ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) +ST_Transform (F) ST_Union (F) ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) -StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -380,10 +396,8 @@ TIMEDIFF (F) TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) -TO_BASE64 (F) TO_DAYS (F) TO_SECONDS (F) -Touches (F) TRIM (F) TRUNCATE (F) UCASE (F) @@ -407,13 +421,9 @@ VAR_SAMP (F) VARIANCE (F) VERSION (F) WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) -Within (F) -X (F) -Y (F) YEAR (F) YEARWEEK (F) diff --git a/tools/contexts/_functionsMySql80300.txt b/tools/contexts/_functionsMySql80300.txt index cf12b5958..76df8c0e7 100644 --- a/tools/contexts/_functionsMySql80300.txt +++ b/tools/contexts/_functionsMySql80300.txt @@ -5,13 +5,13 @@ ADDTIME (F) AES_DECRYPT (F) AES_ENCRYPT (F) ANY_VALUE (F) -Area (F) -AsBinary (F) ASCII (F) ASIN (F) -AsText (F) -AsWKB (F) -AsWKT (F) +asynchronous_connection_failover_add_managed (F) +asynchronous_connection_failover_add_source (F) +asynchronous_connection_failover_delete_managed (F) +asynchronous_connection_failover_delete_source (F) +asynchronous_connection_failover_reset (F) ATAN (F) ATAN2 (F) AVG (F) @@ -24,11 +24,14 @@ BIT_COUNT (F) BIT_LENGTH (F) BIT_OR (F) BIT_XOR (F) -Buffer (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) CAST (F) CEIL (F) CEILING (F) -Centroid (F) CHAR (F) CHAR_LENGTH (F) CHARACTER_LENGTH (F) @@ -40,18 +43,17 @@ COMPRESS (F) CONCAT (F) CONCAT_WS (F) CONNECTION_ID (F) -Contains (F) CONV (F) CONVERT (F) CONVERT_TZ (F) -ConvexHull (F) COS (F) COT (F) COUNT (F) CRC32 (F) -Crosses (F) +CUME_DIST (F) CURDATE (F) CURRENT_DATE (F) +CURRENT_ROLE (F) CURRENT_TIME (F) CURRENT_TIMESTAMP (F) CURRENT_USER (F) @@ -67,76 +69,81 @@ DAYNAME (F) DAYOFMONTH (F) DAYOFWEEK (F) DAYOFYEAR (F) -DECODE (F) DEFAULT (F) DEGREES (F) -DES_DECRYPT (F) -DES_ENCRYPT (F) -Dimension (F) -Disjoint (F) -Distance (F) +DENSE_RANK (F) ELT (F) -ENCODE (F) -ENCRYPT (F) -EndPoint (F) -Envelope (F) -Equals (F) EXP (F) EXPORT_SET (F) -ExteriorRing (F) EXTRACT (F) ExtractValue (F) FIELD (F) FIND_IN_SET (F) +FIRST_VALUE (F) FLOOR (F) FORMAT (F) +FORMAT_BYTES (F) +FORMAT_PICO_TIME (F) FOUND_ROWS (F) -FROM_BASE64 (F) FROM_DAYS (F) FROM_UNIXTIME (F) -GeomCollFromText (F) -GeomCollFromWKB (F) +GeomCollection (F) GeometryCollection (F) -GeometryCollectionFromText (F) -GeometryCollectionFromWKB (F) -GeometryFromText (F) -GeometryN (F) -GeometryType (F) -GeomFromText (F) -GeomFromWKB (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) GET_FORMAT (F) GET_LOCK (F) -GLength (F) GREATEST (F) GROUP_CONCAT (F) -GTID_SUBSET (F) -GTID_SUBTRACT (F) +GROUPING (F) +group_replication_disable_member_action (F) +group_replication_enable_member_action (F) +group_replication_get_communication_protocol (F) +group_replication_get_write_concurrency (F) +group_replication_reset_member_actions (F) +group_replication_set_as_primary (F) +group_replication_set_communication_protocol (F) +group_replication_set_write_concurrency (F) +group_replication_switch_to_multi_primary_mode (F) +group_replication_switch_to_single_primary_mode (F) HEX (F) HOUR (F) +ICU_VERSION (F) IF (F) IFNULL (F) IN (F) -INET6_ATON (F) -INET6_NTOA (F) INET_ATON (F) INET_NTOA (F) INSERT (F) INSTR (F) -InteriorRingN (F) -Intersects (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECKSUM (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) INTERVAL (F) IS_FREE_LOCK (F) -IS_IPV4 (F) -IS_IPV4_COMPAT (F) -IS_IPV4_MAPPED (F) -IS_IPV6 (F) IS_USED_LOCK (F) IS_UUID (F) -IsClosed (F) -IsEmpty (F) ISNULL (F) -IsSimple (F) JSON_ARRAY (F) +JSON_ARRAYAGG (F) JSON_ARRAY_APPEND (F) JSON_ARRAY_INSERT (F) JSON_CONTAINS (F) @@ -150,26 +157,33 @@ JSON_MERGE (F) JSON_MERGE_PATCH (F) JSON_MERGE_PRESERVE (F) JSON_OBJECT (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) JSON_PRETTY (F) JSON_QUOTE (F) JSON_REMOVE (F) JSON_REPLACE (F) +JSON_SCHEMA_VALID (F) +JSON_SCHEMA_VALIDATION_REPORT (F) JSON_SEARCH (F) JSON_SET (F) JSON_STORAGE_FREE (F) JSON_STORAGE_SIZE (F) +JSON_TABLE (F) JSON_TYPE (F) JSON_UNQUOTE (F) JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) LAST_INSERT_ID (F) +LAST_VALUE (F) LCASE (F) +LEAD (F) LEAST (F) LEFT (F) LENGTH (F) -LineFromText (F) -LineFromWKB (F) LineString (F) -LineStringFromWKB (F) LN (F) LOAD_FILE (F) LOCALTIME (F) @@ -185,81 +199,69 @@ MAKE_SET (F) MAKEDATE (F) MAKETIME (F) MASTER_POS_WAIT (F) +MATCH (F) MAX (F) MBRContains (F) MBRCoveredBy (F) MBRCovers (F) MBRDisjoint (F) -MBREqual (F) MBREquals (F) MBRIntersects (F) MBROverlaps (F) MBRTouches (F) MBRWithin (F) MD5 (F) +MEMBER OF (F) MICROSECOND (F) MID (F) MIN (F) MINUTE (F) -MLineFromText (F) -MLineFromWKB (F) MOD (F) MONTH (F) MONTHNAME (F) -MPointFromText (F) -MPointFromWKB (F) -MPolyFromText (F) -MPolyFromWKB (F) MultiLineString (F) -MultiLineStringFromText (F) -MultiLineStringFromWKB (F) MultiPoint (F) -MultiPointFromText (F) -MultiPointFromWKB (F) MultiPolygon (F) -MultiPolygonFromText (F) -MultiPolygonFromWKB (F) NAME_CONST (F) NOT IN (F) NOW (F) +NTH_VALUE (F) +NTILE (F) NULLIF (F) -NumGeometries (F) -NumInteriorRings (F) -NumPoints (F) OCT (F) OCTET_LENGTH (F) -OLD_PASSWORD (F) ORD (F) -Overlaps (F) -PASSWORD (F) +PERCENT_RANK (F) PERIOD_ADD (F) PERIOD_DIFF (F) PI (F) Point (F) -PointFromText (F) -PointFromWKB (F) -PointN (F) -PolyFromText (F) -PolyFromWKB (F) Polygon (F) -PolygonFromText (F) -PolygonFromWKB (F) POSITION (F) POW (F) POWER (F) +PS_CURRENT_THREAD_ID (F) +PS_THREAD_ID (F) QUARTER (F) QUOTE (F) RADIANS (F) RAND (F) RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_LIKE (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) RELEASE_ALL_LOCKS (F) RELEASE_LOCK (F) REPEAT (F) REPLACE (F) REVERSE (F) RIGHT (F) +ROLES_GRAPHML (F) ROUND (F) ROW_COUNT (F) +ROW_NUMBER (F) RPAD (F) RTRIM (F) SCHEMA (F) @@ -273,9 +275,9 @@ SIGN (F) SIN (F) SLEEP (F) SOUNDEX (F) +SOURCE_POS_WAIT (F) SPACE (F) SQRT (F) -SRID (F) ST_Area (F) ST_AsBinary (F) ST_AsGeoJSON (F) @@ -285,6 +287,7 @@ ST_AsWKT (F) ST_Buffer (F) ST_Buffer_Strategy (F) ST_Centroid (F) +ST_Collect (F) ST_Contains (F) ST_ConvexHull (F) ST_Crosses (F) @@ -297,6 +300,7 @@ ST_EndPoint (F) ST_Envelope (F) ST_Equals (F) ST_ExteriorRing (F) +ST_FrechetDistance (F) ST_GeoHash (F) ST_GeomCollFromText (F) ST_GeomCollFromTxt (F) @@ -304,11 +308,13 @@ ST_GeomCollFromWKB (F) ST_GeometryCollectionFromText (F) ST_GeometryCollectionFromWKB (F) ST_GeometryFromText (F) +ST_GeometryFromWKB (F) ST_GeometryN (F) ST_GeometryType (F) ST_GeomFromGeoJSON (F) ST_GeomFromText (F) ST_GeomFromWKB (F) +ST_HausdorffDistance (F) ST_InteriorRingN (F) ST_Intersection (F) ST_Intersects (F) @@ -317,11 +323,16 @@ ST_IsEmpty (F) ST_IsSimple (F) ST_IsValid (F) ST_LatFromGeoHash (F) +ST_Latitude (F) ST_Length (F) ST_LineFromText (F) ST_LineFromWKB (F) +ST_LineInterpolatePoint (F) +ST_LineInterpolatePoints (F) +ST_LineStringFromText (F) ST_LineStringFromWKB (F) ST_LongFromGeoHash (F) +ST_Longitude (F) ST_MakeEnvelope (F) ST_MLineFromText (F) ST_MLineFromWKB (F) @@ -336,9 +347,11 @@ ST_MultiPointFromWKB (F) ST_MultiPolygonFromText (F) ST_MultiPolygonFromWKB (F) ST_NumGeometries (F) +ST_NumInteriorRing (F) ST_NumInteriorRings (F) ST_NumPoints (F) ST_Overlaps (F) +ST_PointAtDistance (F) ST_PointFromGeoHash (F) ST_PointFromText (F) ST_PointFromWKB (F) @@ -350,14 +363,17 @@ ST_PolygonFromWKB (F) ST_Simplify (F) ST_SRID (F) ST_StartPoint (F) +ST_SwapXY (F) ST_SymDifference (F) ST_Touches (F) +ST_Transform (F) ST_Union (F) ST_Validate (F) ST_Within (F) ST_X (F) ST_Y (F) -StartPoint (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) STD (F) STDDEV (F) STDDEV_POP (F) @@ -380,10 +396,8 @@ TIMEDIFF (F) TIMESTAMP (F) TIMESTAMPADD (F) TIMESTAMPDIFF (F) -TO_BASE64 (F) TO_DAYS (F) TO_SECONDS (F) -Touches (F) TRIM (F) TRUNCATE (F) UCASE (F) @@ -407,13 +421,9 @@ VAR_SAMP (F) VARIANCE (F) VERSION (F) WAIT_FOR_EXECUTED_GTID_SET (F) -WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) WEEK (F) WEEKDAY (F) WEEKOFYEAR (F) WEIGHT_STRING (F) -Within (F) -X (F) -Y (F) YEAR (F) YEARWEEK (F) diff --git a/tools/contexts/_functionsMySql80400.txt b/tools/contexts/_functionsMySql80400.txt new file mode 100644 index 000000000..c827e82b4 --- /dev/null +++ b/tools/contexts/_functionsMySql80400.txt @@ -0,0 +1,429 @@ +ABS (F) +ACOS (F) +ADDDATE (F) +ADDTIME (F) +AES_DECRYPT (F) +AES_ENCRYPT (F) +ANY_VALUE (F) +ASCII (F) +ASIN (F) +asynchronous_connection_failover_add_managed (F) +asynchronous_connection_failover_add_source (F) +asynchronous_connection_failover_delete_managed (F) +asynchronous_connection_failover_delete_source (F) +asynchronous_connection_failover_reset (F) +ATAN (F) +ATAN2 (F) +AVG (F) +BENCHMARK (F) +BIN (F) +BINARY (F) +BIN_TO_UUID (F) +BIT_AND (F) +BIT_COUNT (F) +BIT_LENGTH (F) +BIT_OR (F) +BIT_XOR (F) +CAN_ACCESS_COLUMN (F) +CAN_ACCESS_DATABASE (F) +CAN_ACCESS_TABLE (F) +CAN_ACCESS_USER (F) +CAN_ACCESS_VIEW (F) +CAST (F) +CEIL (F) +CEILING (F) +CHAR (F) +CHAR_LENGTH (F) +CHARACTER_LENGTH (F) +CHARSET (F) +COALESCE (F) +COERCIBILITY (F) +COLLATION (F) +COMPRESS (F) +CONCAT (F) +CONCAT_WS (F) +CONNECTION_ID (F) +CONV (F) +CONVERT (F) +CONVERT_TZ (F) +COS (F) +COT (F) +COUNT (F) +CRC32 (F) +CUME_DIST (F) +CURDATE (F) +CURRENT_DATE (F) +CURRENT_ROLE (F) +CURRENT_TIME (F) +CURRENT_TIMESTAMP (F) +CURRENT_USER (F) +CURTIME (F) +DATABASE (F) +DATE (F) +DATE_ADD (F) +DATE_FORMAT (F) +DATE_SUB (F) +DATEDIFF (F) +DAY (F) +DAYNAME (F) +DAYOFMONTH (F) +DAYOFWEEK (F) +DAYOFYEAR (F) +DEFAULT (F) +DEGREES (F) +DENSE_RANK (F) +ELT (F) +EXP (F) +EXPORT_SET (F) +EXTRACT (F) +ExtractValue (F) +FIELD (F) +FIND_IN_SET (F) +FIRST_VALUE (F) +FLOOR (F) +FORMAT (F) +FORMAT_BYTES (F) +FORMAT_PICO_TIME (F) +FOUND_ROWS (F) +FROM_DAYS (F) +FROM_UNIXTIME (F) +GeomCollection (F) +GeometryCollection (F) +GET_DD_COLUMN_PRIVILEGES (F) +GET_DD_CREATE_OPTIONS (F) +GET_DD_INDEX_SUB_PART_LENGTH (F) +GET_FORMAT (F) +GET_LOCK (F) +GREATEST (F) +GROUP_CONCAT (F) +GROUPING (F) +group_replication_disable_member_action (F) +group_replication_enable_member_action (F) +group_replication_get_communication_protocol (F) +group_replication_get_write_concurrency (F) +group_replication_reset_member_actions (F) +group_replication_set_as_primary (F) +group_replication_set_communication_protocol (F) +group_replication_set_write_concurrency (F) +group_replication_switch_to_multi_primary_mode (F) +group_replication_switch_to_single_primary_mode (F) +HEX (F) +HOUR (F) +ICU_VERSION (F) +IF (F) +IFNULL (F) +IN (F) +INET_ATON (F) +INET_NTOA (F) +INSERT (F) +INSTR (F) +INTERNAL_AUTO_INCREMENT (F) +INTERNAL_AVG_ROW_LENGTH (F) +INTERNAL_CHECK_TIME (F) +INTERNAL_CHECKSUM (F) +INTERNAL_DATA_FREE (F) +INTERNAL_DATA_LENGTH (F) +INTERNAL_DD_CHAR_LENGTH (F) +INTERNAL_GET_COMMENT_OR_ERROR (F) +INTERNAL_GET_ENABLED_ROLE_JSON (F) +INTERNAL_GET_HOSTNAME (F) +INTERNAL_GET_USERNAME (F) +INTERNAL_GET_VIEW_WARNING_OR_ERROR (F) +INTERNAL_INDEX_COLUMN_CARDINALITY (F) +INTERNAL_INDEX_LENGTH (F) +INTERNAL_IS_ENABLED_ROLE (F) +INTERNAL_IS_MANDATORY_ROLE (F) +INTERNAL_KEYS_DISABLED (F) +INTERNAL_MAX_DATA_LENGTH (F) +INTERNAL_TABLE_ROWS (F) +INTERNAL_UPDATE_TIME (F) +INTERVAL (F) +IS_FREE_LOCK (F) +IS_USED_LOCK (F) +IS_UUID (F) +ISNULL (F) +JSON_ARRAY (F) +JSON_ARRAY_APPEND (F) +JSON_ARRAY_INSERT (F) +JSON_ARRAYAGG (F) +JSON_CONTAINS (F) +JSON_CONTAINS_PATH (F) +JSON_DEPTH (F) +JSON_EXTRACT (F) +JSON_INSERT (F) +JSON_KEYS (F) +JSON_LENGTH (F) +JSON_MERGE (F) +JSON_MERGE_PATCH (F) +JSON_MERGE_PRESERVE (F) +JSON_OBJECT (F) +JSON_OBJECTAGG (F) +JSON_OVERLAPS (F) +JSON_PRETTY (F) +JSON_QUOTE (F) +JSON_REMOVE (F) +JSON_REPLACE (F) +JSON_SCHEMA_VALID (F) +JSON_SCHEMA_VALIDATION_REPORT (F) +JSON_SEARCH (F) +JSON_SET (F) +JSON_STORAGE_FREE (F) +JSON_STORAGE_SIZE (F) +JSON_TABLE (F) +JSON_TYPE (F) +JSON_UNQUOTE (F) +JSON_VALID (F) +JSON_VALUE (F) +LAG (F) +LAST_DAY (F) +LAST_INSERT_ID (F) +LAST_VALUE (F) +LCASE (F) +LEAD (F) +LEAST (F) +LEFT (F) +LENGTH (F) +LineString (F) +LN (F) +LOAD_FILE (F) +LOCALTIME (F) +LOCALTIMESTAMP (F) +LOCATE (F) +LOG (F) +LOG10 (F) +LOG2 (F) +LOWER (F) +LPAD (F) +LTRIM (F) +MAKE_SET (F) +MAKEDATE (F) +MAKETIME (F) +MASTER_POS_WAIT (F) +MATCH (F) +MAX (F) +MBRContains (F) +MBRCoveredBy (F) +MBRCovers (F) +MBRDisjoint (F) +MBREquals (F) +MBRIntersects (F) +MBROverlaps (F) +MBRTouches (F) +MBRWithin (F) +MD5 (F) +MEMBER OF (F) +MICROSECOND (F) +MID (F) +MIN (F) +MINUTE (F) +MOD (F) +MONTH (F) +MONTHNAME (F) +MultiLineString (F) +MultiPoint (F) +MultiPolygon (F) +NAME_CONST (F) +NOT IN (F) +NOW (F) +NTH_VALUE (F) +NTILE (F) +NULLIF (F) +OCT (F) +OCTET_LENGTH (F) +ORD (F) +PERCENT_RANK (F) +PERIOD_ADD (F) +PERIOD_DIFF (F) +PI (F) +Point (F) +Polygon (F) +POSITION (F) +POW (F) +POWER (F) +PS_CURRENT_THREAD_ID (F) +PS_THREAD_ID (F) +QUARTER (F) +QUOTE (F) +RADIANS (F) +RAND (F) +RANDOM_BYTES (F) +RANK (F) +REGEXP_INSTR (F) +REGEXP_LIKE (F) +REGEXP_REPLACE (F) +REGEXP_SUBSTR (F) +RELEASE_ALL_LOCKS (F) +RELEASE_LOCK (F) +REPEAT (F) +REPLACE (F) +REVERSE (F) +RIGHT (F) +ROLES_GRAPHML (F) +ROUND (F) +ROW_COUNT (F) +ROW_NUMBER (F) +RPAD (F) +RTRIM (F) +SCHEMA (F) +SEC_TO_TIME (F) +SECOND (F) +SESSION_USER (F) +SHA (F) +SHA1 (F) +SHA2 (F) +SIGN (F) +SIN (F) +SLEEP (F) +SOUNDEX (F) +SOURCE_POS_WAIT (F) +SPACE (F) +SQRT (F) +ST_Area (F) +ST_AsBinary (F) +ST_AsGeoJSON (F) +ST_AsText (F) +ST_AsWKB (F) +ST_AsWKT (F) +ST_Buffer (F) +ST_Buffer_Strategy (F) +ST_Centroid (F) +ST_Collect (F) +ST_Contains (F) +ST_ConvexHull (F) +ST_Crosses (F) +ST_Difference (F) +ST_Dimension (F) +ST_Disjoint (F) +ST_Distance (F) +ST_Distance_Sphere (F) +ST_EndPoint (F) +ST_Envelope (F) +ST_Equals (F) +ST_ExteriorRing (F) +ST_FrechetDistance (F) +ST_GeoHash (F) +ST_GeomCollFromText (F) +ST_GeomCollFromTxt (F) +ST_GeomCollFromWKB (F) +ST_GeometryCollectionFromText (F) +ST_GeometryCollectionFromWKB (F) +ST_GeometryFromText (F) +ST_GeometryFromWKB (F) +ST_GeometryN (F) +ST_GeometryType (F) +ST_GeomFromGeoJSON (F) +ST_GeomFromText (F) +ST_GeomFromWKB (F) +ST_HausdorffDistance (F) +ST_InteriorRingN (F) +ST_Intersection (F) +ST_Intersects (F) +ST_IsClosed (F) +ST_IsEmpty (F) +ST_IsSimple (F) +ST_IsValid (F) +ST_LatFromGeoHash (F) +ST_Latitude (F) +ST_Length (F) +ST_LineFromText (F) +ST_LineFromWKB (F) +ST_LineInterpolatePoint (F) +ST_LineInterpolatePoints (F) +ST_LineStringFromText (F) +ST_LineStringFromWKB (F) +ST_LongFromGeoHash (F) +ST_Longitude (F) +ST_MakeEnvelope (F) +ST_MLineFromText (F) +ST_MLineFromWKB (F) +ST_MPointFromText (F) +ST_MPointFromWKB (F) +ST_MPolyFromText (F) +ST_MPolyFromWKB (F) +ST_MultiLineStringFromText (F) +ST_MultiLineStringFromWKB (F) +ST_MultiPointFromText (F) +ST_MultiPointFromWKB (F) +ST_MultiPolygonFromText (F) +ST_MultiPolygonFromWKB (F) +ST_NumGeometries (F) +ST_NumInteriorRing (F) +ST_NumInteriorRings (F) +ST_NumPoints (F) +ST_Overlaps (F) +ST_PointAtDistance (F) +ST_PointFromGeoHash (F) +ST_PointFromText (F) +ST_PointFromWKB (F) +ST_PointN (F) +ST_PolyFromText (F) +ST_PolyFromWKB (F) +ST_PolygonFromText (F) +ST_PolygonFromWKB (F) +ST_Simplify (F) +ST_SRID (F) +ST_StartPoint (F) +ST_SwapXY (F) +ST_SymDifference (F) +ST_Touches (F) +ST_Transform (F) +ST_Union (F) +ST_Validate (F) +ST_Within (F) +ST_X (F) +ST_Y (F) +STATEMENT_DIGEST (F) +STATEMENT_DIGEST_TEXT (F) +STD (F) +STDDEV (F) +STDDEV_POP (F) +STDDEV_SAMP (F) +STR_TO_DATE (F) +STRCMP (F) +SUBDATE (F) +SUBSTR (F) +SUBSTRING (F) +SUBSTRING_INDEX (F) +SUBTIME (F) +SUM (F) +SYSDATE (F) +SYSTEM_USER (F) +TAN (F) +TIME (F) +TIME_FORMAT (F) +TIME_TO_SEC (F) +TIMEDIFF (F) +TIMESTAMP (F) +TIMESTAMPADD (F) +TIMESTAMPDIFF (F) +TO_DAYS (F) +TO_SECONDS (F) +TRIM (F) +TRUNCATE (F) +UCASE (F) +UNCOMPRESS (F) +UNCOMPRESSED_LENGTH (F) +UNHEX (F) +UNIX_TIMESTAMP (F) +UpdateXML (F) +UPPER (F) +USER (F) +UTC_DATE (F) +UTC_TIME (F) +UTC_TIMESTAMP (F) +UUID (F) +UUID_SHORT (F) +UUID_TO_BIN (F) +VALIDATE_PASSWORD_STRENGTH (F) +VALUES (F) +VAR_POP (F) +VAR_SAMP (F) +VARIANCE (F) +VERSION (F) +WAIT_FOR_EXECUTED_GTID_SET (F) +WEEK (F) +WEEKDAY (F) +WEEKOFYEAR (F) +WEIGHT_STRING (F) +YEAR (F) +YEARWEEK (F) diff --git a/tools/contexts/_functionsMySql90000.txt b/tools/contexts/_functionsMySql90000.txt new file mode 100644 index 000000000..cc656237f --- /dev/null +++ b/tools/contexts/_functionsMySql90000.txt @@ -0,0 +1,424 @@ +ABS (F) +ACOS (F) +ADDDATE (F) +ADDTIME (F) +AES_DECRYPT (F) +AES_ENCRYPT (F) +ANY_VALUE (F) +Area (F) +AsBinary (F) +ASCII (F) +ASIN (F) +AsText (F) +AsWKB (F) +AsWKT (F) +ATAN (F) +ATAN2 (F) +AVG (F) +BENCHMARK (F) +BIN (F) +BINARY (F) +BIN_TO_UUID (F) +BIT_AND (F) +BIT_COUNT (F) +BIT_LENGTH (F) +BIT_OR (F) +BIT_XOR (F) +Buffer (F) +CAST (F) +CEIL (F) +CEILING (F) +Centroid (F) +CHAR (F) +CHAR_LENGTH (F) +CHARACTER_LENGTH (F) +CHARSET (F) +COALESCE (F) +COERCIBILITY (F) +COLLATION (F) +COMPRESS (F) +CONCAT (F) +CONCAT_WS (F) +CONNECTION_ID (F) +Contains (F) +CONV (F) +CONVERT (F) +CONVERT_TZ (F) +ConvexHull (F) +COS (F) +COT (F) +COUNT (F) +CRC32 (F) +Crosses (F) +CURDATE (F) +CURRENT_DATE (F) +CURRENT_TIME (F) +CURRENT_TIMESTAMP (F) +CURRENT_USER (F) +CURTIME (F) +DATABASE (F) +DATE (F) +DATE_ADD (F) +DATE_FORMAT (F) +DATE_SUB (F) +DATEDIFF (F) +DAY (F) +DAYNAME (F) +DAYOFMONTH (F) +DAYOFWEEK (F) +DAYOFYEAR (F) +DECODE (F) +DEFAULT (F) +DEGREES (F) +DES_DECRYPT (F) +DES_ENCRYPT (F) +Dimension (F) +Disjoint (F) +Distance (F) +ELT (F) +ENCODE (F) +ENCRYPT (F) +EndPoint (F) +Envelope (F) +Equals (F) +EXP (F) +EXPORT_SET (F) +ExteriorRing (F) +EXTRACT (F) +ExtractValue (F) +FIELD (F) +FIND_IN_SET (F) +FLOOR (F) +FORMAT (F) +FOUND_ROWS (F) +FROM_BASE64 (F) +FROM_DAYS (F) +FROM_UNIXTIME (F) +FROM_VECTOR (F) +GeomCollFromText (F) +GeomCollFromWKB (F) +GeometryCollection (F) +GeometryCollectionFromText (F) +GeometryCollectionFromWKB (F) +GeometryFromText (F) +GeometryN (F) +GeometryType (F) +GeomFromText (F) +GeomFromWKB (F) +GET_FORMAT (F) +GET_LOCK (F) +GLength (F) +GREATEST (F) +GROUP_CONCAT (F) +GTID_SUBSET (F) +GTID_SUBTRACT (F) +HEX (F) +HOUR (F) +IF (F) +IFNULL (F) +IN (F) +INET6_ATON (F) +INET6_NTOA (F) +INET_ATON (F) +INET_NTOA (F) +INSERT (F) +INSTR (F) +InteriorRingN (F) +Intersects (F) +INTERVAL (F) +IS_FREE_LOCK (F) +IS_IPV4 (F) +IS_IPV4_COMPAT (F) +IS_IPV4_MAPPED (F) +IS_IPV6 (F) +IS_USED_LOCK (F) +IS_UUID (F) +IsClosed (F) +IsEmpty (F) +ISNULL (F) +IsSimple (F) +JSON_ARRAY (F) +JSON_ARRAY_APPEND (F) +JSON_ARRAY_INSERT (F) +JSON_CONTAINS (F) +JSON_CONTAINS_PATH (F) +JSON_DEPTH (F) +JSON_EXTRACT (F) +JSON_INSERT (F) +JSON_KEYS (F) +JSON_LENGTH (F) +JSON_MERGE (F) +JSON_MERGE_PATCH (F) +JSON_MERGE_PRESERVE (F) +JSON_OBJECT (F) +JSON_PRETTY (F) +JSON_QUOTE (F) +JSON_REMOVE (F) +JSON_REPLACE (F) +JSON_SEARCH (F) +JSON_SET (F) +JSON_STORAGE_FREE (F) +JSON_STORAGE_SIZE (F) +JSON_TYPE (F) +JSON_UNQUOTE (F) +JSON_VALID (F) +LAST_INSERT_ID (F) +LCASE (F) +LEAST (F) +LEFT (F) +LENGTH (F) +LineFromText (F) +LineFromWKB (F) +LineString (F) +LineStringFromWKB (F) +LN (F) +LOAD_FILE (F) +LOCALTIME (F) +LOCALTIMESTAMP (F) +LOCATE (F) +LOG (F) +LOG10 (F) +LOG2 (F) +LOWER (F) +LPAD (F) +LTRIM (F) +MAKE_SET (F) +MAKEDATE (F) +MAKETIME (F) +MASTER_POS_WAIT (F) +MAX (F) +MBRContains (F) +MBRCoveredBy (F) +MBRCovers (F) +MBRDisjoint (F) +MBREqual (F) +MBREquals (F) +MBRIntersects (F) +MBROverlaps (F) +MBRTouches (F) +MBRWithin (F) +MD5 (F) +MICROSECOND (F) +MID (F) +MIN (F) +MINUTE (F) +MLineFromText (F) +MLineFromWKB (F) +MOD (F) +MONTH (F) +MONTHNAME (F) +MPointFromText (F) +MPointFromWKB (F) +MPolyFromText (F) +MPolyFromWKB (F) +MultiLineString (F) +MultiLineStringFromText (F) +MultiLineStringFromWKB (F) +MultiPoint (F) +MultiPointFromText (F) +MultiPointFromWKB (F) +MultiPolygon (F) +MultiPolygonFromText (F) +MultiPolygonFromWKB (F) +NAME_CONST (F) +NOT IN (F) +NOW (F) +NULLIF (F) +NumGeometries (F) +NumInteriorRings (F) +NumPoints (F) +OCT (F) +OCTET_LENGTH (F) +OLD_PASSWORD (F) +ORD (F) +Overlaps (F) +PASSWORD (F) +PERIOD_ADD (F) +PERIOD_DIFF (F) +PI (F) +Point (F) +PointFromText (F) +PointFromWKB (F) +PointN (F) +PolyFromText (F) +PolyFromWKB (F) +Polygon (F) +PolygonFromText (F) +PolygonFromWKB (F) +POSITION (F) +POW (F) +POWER (F) +QUARTER (F) +QUOTE (F) +RADIANS (F) +RAND (F) +RANDOM_BYTES (F) +RELEASE_ALL_LOCKS (F) +RELEASE_LOCK (F) +REPEAT (F) +REPLACE (F) +REVERSE (F) +RIGHT (F) +ROUND (F) +ROW_COUNT (F) +RPAD (F) +RTRIM (F) +SCHEMA (F) +SEC_TO_TIME (F) +SECOND (F) +SESSION_USER (F) +SHA (F) +SHA1 (F) +SHA2 (F) +SIGN (F) +SIN (F) +SLEEP (F) +SOUNDEX (F) +SPACE (F) +SQRT (F) +SRID (F) +ST_Area (F) +ST_AsBinary (F) +ST_AsGeoJSON (F) +ST_AsText (F) +ST_AsWKB (F) +ST_AsWKT (F) +ST_Buffer (F) +ST_Buffer_Strategy (F) +ST_Centroid (F) +ST_Contains (F) +ST_ConvexHull (F) +ST_Crosses (F) +ST_Difference (F) +ST_Dimension (F) +ST_Disjoint (F) +ST_Distance (F) +ST_Distance_Sphere (F) +ST_EndPoint (F) +ST_Envelope (F) +ST_Equals (F) +ST_ExteriorRing (F) +ST_GeoHash (F) +ST_GeomCollFromText (F) +ST_GeomCollFromTxt (F) +ST_GeomCollFromWKB (F) +ST_GeometryCollectionFromText (F) +ST_GeometryCollectionFromWKB (F) +ST_GeometryFromText (F) +ST_GeometryN (F) +ST_GeometryType (F) +ST_GeomFromGeoJSON (F) +ST_GeomFromText (F) +ST_GeomFromWKB (F) +ST_InteriorRingN (F) +ST_Intersection (F) +ST_Intersects (F) +ST_IsClosed (F) +ST_IsEmpty (F) +ST_IsSimple (F) +ST_IsValid (F) +ST_LatFromGeoHash (F) +ST_Length (F) +ST_LineFromText (F) +ST_LineFromWKB (F) +ST_LineStringFromWKB (F) +ST_LongFromGeoHash (F) +ST_MakeEnvelope (F) +ST_MLineFromText (F) +ST_MLineFromWKB (F) +ST_MPointFromText (F) +ST_MPointFromWKB (F) +ST_MPolyFromText (F) +ST_MPolyFromWKB (F) +ST_MultiLineStringFromText (F) +ST_MultiLineStringFromWKB (F) +ST_MultiPointFromText (F) +ST_MultiPointFromWKB (F) +ST_MultiPolygonFromText (F) +ST_MultiPolygonFromWKB (F) +ST_NumGeometries (F) +ST_NumInteriorRings (F) +ST_NumPoints (F) +ST_Overlaps (F) +ST_PointFromGeoHash (F) +ST_PointFromText (F) +ST_PointFromWKB (F) +ST_PointN (F) +ST_PolyFromText (F) +ST_PolyFromWKB (F) +ST_PolygonFromText (F) +ST_PolygonFromWKB (F) +ST_Simplify (F) +ST_SRID (F) +ST_StartPoint (F) +ST_SymDifference (F) +ST_Touches (F) +ST_Union (F) +ST_Validate (F) +ST_Within (F) +ST_X (F) +ST_Y (F) +StartPoint (F) +STD (F) +STDDEV (F) +STDDEV_POP (F) +STDDEV_SAMP (F) +STR_TO_DATE (F) +STRCMP (F) +STRING_TO_VECTOR (F) +SUBDATE (F) +SUBSTR (F) +SUBSTRING (F) +SUBSTRING_INDEX (F) +SUBTIME (F) +SUM (F) +SYSDATE (F) +SYSTEM_USER (F) +TAN (F) +TIME (F) +TIME_FORMAT (F) +TIME_TO_SEC (F) +TIMEDIFF (F) +TIMESTAMP (F) +TIMESTAMPADD (F) +TIMESTAMPDIFF (F) +TO_BASE64 (F) +TO_DAYS (F) +TO_SECONDS (F) +TO_VECTOR (F) +Touches (F) +TRIM (F) +TRUNCATE (F) +UCASE (F) +UNCOMPRESS (F) +UNCOMPRESSED_LENGTH (F) +UNHEX (F) +UNIX_TIMESTAMP (F) +UpdateXML (F) +UPPER (F) +USER (F) +UTC_DATE (F) +UTC_TIME (F) +UTC_TIMESTAMP (F) +UUID (F) +UUID_SHORT (F) +UUID_TO_BIN (F) +VALIDATE_PASSWORD_STRENGTH (F) +VALUES (F) +VAR_POP (F) +VAR_SAMP (F) +VARIANCE (F) +VECTOR_DIM (F) +VECTOR_TO_STRING (F) +VERSION (F) +WAIT_FOR_EXECUTED_GTID_SET (F) +WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS (F) +WEEK (F) +WEEKDAY (F) +WEEKOFYEAR (F) +WEIGHT_STRING (F) +Within (F) +X (F) +Y (F) +YEAR (F) +YEARWEEK (F)