From edfbbaf058b68dd2101ad97a032be7c250702c1c Mon Sep 17 00:00:00 2001 From: akihiro17 Date: Fri, 10 Jun 2022 12:48:10 +0900 Subject: [PATCH] Suppport CURRENT_TIMESTAMP with pricision ref. https://dev.mysql.com/doc/refman/8.0/en/timestamp-initialization.html --- lib/mysql-parser/lexer.rb | 987 +++++----- lib/mysql-parser/parser.rb | 3507 ++++++++++++++++++------------------ mysql.y.rb | 12 +- parser.output | 2819 +++++++++++++++-------------- spec/parser_spec.rb | 11 + 5 files changed, 3723 insertions(+), 3613 deletions(-) diff --git a/lib/mysql-parser/lexer.rb b/lib/mysql-parser/lexer.rb index fb99eac..826728f 100644 --- a/lib/mysql-parser/lexer.rb +++ b/lib/mysql-parser/lexer.rb @@ -1,717 +1,724 @@ #-- # DO NOT MODIFY!!!! -# This file is automatically generated by rex 1.0.5 +# This file is automatically generated by rex 1.0.7 # from lexical definition file "mysql.rex.rb". #++ require 'racc/parser' class MySQLParser < Racc::Parser - require 'strscan' + require 'strscan' - class ScanError < StandardError ; end + class ScanError < StandardError ; end - attr_reader :lineno - attr_reader :filename - attr_accessor :state + attr_reader :lineno + attr_reader :filename + attr_accessor :state - def scan_setup(str) - @ss = StringScanner.new(str) - @lineno = 1 - @state = nil - end - - def action - yield - end + def scan_setup(str) + @ss = StringScanner.new(str) + @lineno = 1 + @state = nil + end - def scan_str(str) - scan_setup(str) - do_parse - end - alias :scan :scan_str + def action + yield + end - def load_file( filename ) - @filename = filename - open(filename, "r") do |f| - scan_setup(f.read) - end - end + def scan_str(str) + scan_setup(str) + do_parse + end + alias :scan :scan_str - def scan_file( filename ) - load_file(filename) - do_parse - end + def load_file( filename ) + @filename = filename + File.open(filename, "r") do |f| + scan_setup(f.read) + end + end + def scan_file( filename ) + load_file(filename) + do_parse + end - def next_token - return if @ss.eos? - - # skips empty actions - until token = _next_token or @ss.eos?; end - token - end - def _next_token - text = @ss.peek(1) - @lineno += 1 if text == "\n" - token = case @state - when nil - case - when (text = @ss.scan(/\A/i)) - action { @state = :A_NIL; nil } + def next_token + return if @ss.eos? - else - text = @ss.string[@ss.pos .. -1] - raise ScanError, "can not match: '" + text + "'" - end # if + # skips empty actions + until token = _next_token or @ss.eos?; end + token + end - when :A_NIL - case - when (text = @ss.scan(/ *\/\*/i)) - action { @state = :A_REM_MULTI; [:S_REM_IN, [text, ' /* ']] } + def _next_token + text = @ss.peek(1) + @lineno += 1 if text == "\n" + token = case @state + when nil + case + when (text = @ss.scan(/\A/i)) + action { @state = :A_NIL; nil } - when (text = @ss.scan(/ *(\#|--)/i)) - action { @state = :A_REM_INLINE; [:S_REM_IN, '-- '] } + + else + text = @ss.string[@ss.pos .. -1] + raise ScanError, "can not match: '" + text + "'" + end # if - when (text = @ss.scan(/`/i)) - action { @state = :A_BACKTICK; [:S_BACKTICK_IN, text] } + when :A_NIL + case + when (text = @ss.scan(/ *\/\*/i)) + action { @state = :A_REM_MULTI; [:S_REM_IN, [text, ' /* ']] } - when (text = @ss.scan(/"/i)) - action { @state = :A_DOUBLEQUOTE; [:S_DOUBLEQUOTE_IN, text] } + when (text = @ss.scan(/ *(\#|--)/i)) + action { @state = :A_REM_INLINE; [:S_REM_IN, '-- '] } - when (text = @ss.scan(/'/i)) - action { @state = :A_SINGLEQUOTE; [:S_SINGLEQUOTE_IN, text] } + when (text = @ss.scan(/`/i)) + action { @state = :A_BACKTICK; [:S_BACKTICK_IN, text] } - when (text = @ss.scan(/TRUE\b/i)) - action { [:S_ONE, text] } + when (text = @ss.scan(/"/i)) + action { @state = :A_DOUBLEQUOTE; [:S_DOUBLEQUOTE_IN, text] } - when (text = @ss.scan(/FALSE\b/i)) - action { [:S_ZERO, text] } + when (text = @ss.scan(/'/i)) + action { @state = :A_SINGLEQUOTE; [:S_SINGLEQUOTE_IN, text] } - when (text = @ss.scan(/BOOLEAN\b/i)) - action { [:TINYINT, text] } + when (text = @ss.scan(/TRUE\b/i)) + action { [:S_ONE, text] } - when (text = @ss.scan(/CHARSET\b/i)) - action { [:L_CHARACTER_SET, text] } + when (text = @ss.scan(/FALSE\b/i)) + action { [:S_ZERO, text] } - when (text = @ss.scan(/CHARACTER[ \t\n]+SET\b/i)) - action { [:L_CHARACTER_SET, text] } + when (text = @ss.scan(/BOOLEAN\b/i)) + action { [:TINYINT, text] } - when (text = @ss.scan(/FROM\b/i)) - action { [:FROM, text] } + when (text = @ss.scan(/CHARSET\b/i)) + action { [:L_CHARACTER_SET, text] } - when (text = @ss.scan(/WHERE\b/i)) - action { [:WHERE, text] } + when (text = @ss.scan(/CHARACTER[ \t\n]+SET\b/i)) + action { [:L_CHARACTER_SET, text] } - when (text = @ss.scan(/ZEROFILL\b/i)) - action { [:ZEROFILL, text] } + when (text = @ss.scan(/FROM\b/i)) + action { [:FROM, text] } - when (text = @ss.scan(/YEAR\b/i)) - action { [:YEAR, text] } + when (text = @ss.scan(/WHERE\b/i)) + action { [:WHERE, text] } - when (text = @ss.scan(/WITH\b/i)) - action { [:WITH, text] } + when (text = @ss.scan(/ZEROFILL\b/i)) + action { [:ZEROFILL, text] } - when (text = @ss.scan(/VIEW\b/i)) - action { [:VIEW, text] } + when (text = @ss.scan(/YEAR\b/i)) + action { [:YEAR, text] } - when (text = @ss.scan(/VARCHAR\b/i)) - action { [:VARCHAR, text] } + when (text = @ss.scan(/WITH\b/i)) + action { [:WITH, text] } - when (text = @ss.scan(/VARBINARY\b/i)) - action { [:VARBINARY, text] } + when (text = @ss.scan(/VIEW\b/i)) + action { [:VIEW, text] } - when (text = @ss.scan(/VALUES\b/i)) - action { [:VALUES, text] } + when (text = @ss.scan(/VARCHAR\b/i)) + action { [:VARCHAR, text] } - when (text = @ss.scan(/UTF8MB4\b/i)) - action { [:UTF8MB4, text] } + when (text = @ss.scan(/VARBINARY\b/i)) + action { [:VARBINARY, text] } - when (text = @ss.scan(/UTF8MB3\b/i)) - action { [:UTF8MB3, text] } + when (text = @ss.scan(/VALUES\b/i)) + action { [:VALUES, text] } - when (text = @ss.scan(/UTF8\b/i)) - action { [:UTF8, text] } + when (text = @ss.scan(/UTF8MB4\b/i)) + action { [:UTF8MB4, text] } - when (text = @ss.scan(/USING\b/i)) - action { [:USING, text] } + when (text = @ss.scan(/UTF8MB3\b/i)) + action { [:UTF8MB3, text] } - when (text = @ss.scan(/UPDATE\b/i)) - action { [:UPDATE, text] } + when (text = @ss.scan(/UTF8\b/i)) + action { [:UTF8, text] } - when (text = @ss.scan(/UNSIGNED\b/i)) - action { [:UNSIGNED, text] } + when (text = @ss.scan(/USING\b/i)) + action { [:USING, text] } - when (text = @ss.scan(/UNIQUE\b/i)) - action { [:UNIQUE, text] } + when (text = @ss.scan(/UPDATE\b/i)) + action { [:UPDATE, text] } - when (text = @ss.scan(/UNION\b/i)) - action { [:UNION, text] } + when (text = @ss.scan(/UNSIGNED\b/i)) + action { [:UNSIGNED, text] } - when (text = @ss.scan(/UNDEFINED\b/i)) - action { [:UNDEFINED, text] } + when (text = @ss.scan(/UNIQUE\b/i)) + action { [:UNIQUE, text] } - when (text = @ss.scan(/TRUNCATE\b/i)) - action { [:TRUNCATE, text] } + when (text = @ss.scan(/UNION\b/i)) + action { [:UNION, text] } - when (text = @ss.scan(/TO\b/i)) - action { [:TO, text] } + when (text = @ss.scan(/UNDEFINED\b/i)) + action { [:UNDEFINED, text] } - when (text = @ss.scan(/TINYTEXT\b/i)) - action { [:TINYTEXT, text] } + when (text = @ss.scan(/TRUNCATE\b/i)) + action { [:TRUNCATE, text] } - when (text = @ss.scan(/TINYINT\b/i)) - action { [:TINYINT, text] } + when (text = @ss.scan(/TO\b/i)) + action { [:TO, text] } - when (text = @ss.scan(/TINYBLOB\b/i)) - action { [:TINYBLOB, text] } + when (text = @ss.scan(/TINYTEXT\b/i)) + action { [:TINYTEXT, text] } - when (text = @ss.scan(/TIMESTAMP\b/i)) - action { [:TIMESTAMP, text] } + when (text = @ss.scan(/TINYINT\b/i)) + action { [:TINYINT, text] } - when (text = @ss.scan(/TIME\b/i)) - action { [:TIME, text] } + when (text = @ss.scan(/TINYBLOB\b/i)) + action { [:TINYBLOB, text] } - when (text = @ss.scan(/THAN\b/i)) - action { [:THAN, text] } + when (text = @ss.scan(/TIMESTAMP\b/i)) + action { [:TIMESTAMP, text] } - when (text = @ss.scan(/TEXT\b/i)) - action { [:TEXT, text] } + when (text = @ss.scan(/TIME\b/i)) + action { [:TIME, text] } - when (text = @ss.scan(/TEMPTABLE\b/i)) - action { [:TEMPTABLE, text] } + when (text = @ss.scan(/THAN\b/i)) + action { [:THAN, text] } - when (text = @ss.scan(/TEMPORARY\b/i)) - action { [:TEMPORARY, text] } + when (text = @ss.scan(/TEXT\b/i)) + action { [:TEXT, text] } - when (text = @ss.scan(/TABLESPACE\b/i)) - action { [:TABLESPACE, text] } + when (text = @ss.scan(/TEMPTABLE\b/i)) + action { [:TEMPTABLE, text] } - when (text = @ss.scan(/TABLE\b/i)) - action { [:TABLE, text] } + when (text = @ss.scan(/TEMPORARY\b/i)) + action { [:TEMPORARY, text] } - when (text = @ss.scan(/SUBPARTITION\b/i)) - action { [:SUBPARTITION, text] } + when (text = @ss.scan(/TABLESPACE\b/i)) + action { [:TABLESPACE, text] } - when (text = @ss.scan(/STORAGE\b/i)) - action { [:STORAGE, text] } + when (text = @ss.scan(/TABLE\b/i)) + action { [:TABLE, text] } - when (text = @ss.scan(/SQL\b/i)) - action { [:SQL, text] } + when (text = @ss.scan(/SUBPARTITION\b/i)) + action { [:SUBPARTITION, text] } - when (text = @ss.scan(/SPATIAL\b/i)) - action { [:SPATIAL, text] } + when (text = @ss.scan(/STORAGE\b/i)) + action { [:STORAGE, text] } - when (text = @ss.scan(/SMALLINT\b/i)) - action { [:SMALLINT, text] } + when (text = @ss.scan(/SQL\b/i)) + action { [:SQL, text] } - when (text = @ss.scan(/SIMPLE\b/i)) - action { [:SIMPLE, text] } + when (text = @ss.scan(/SPATIAL\b/i)) + action { [:SPATIAL, text] } - when (text = @ss.scan(/SET\b/i)) - action { [:SET, text] } + when (text = @ss.scan(/SMALLINT\b/i)) + action { [:SMALLINT, text] } - when (text = @ss.scan(/SELECT\b/i)) - action { [:SELECT, text] } + when (text = @ss.scan(/SIMPLE\b/i)) + action { [:SIMPLE, text] } - when (text = @ss.scan(/SECURITY\b/i)) - action { [:SECURITY, text] } + when (text = @ss.scan(/SET\b/i)) + action { [:SET, text] } - when (text = @ss.scan(/ROW_FORMAT\b/i)) - action { [:ROW_FORMAT, text] } + when (text = @ss.scan(/SELECT\b/i)) + action { [:SELECT, text] } - when (text = @ss.scan(/RESTRICT\b/i)) - action { [:RESTRICT, text] } + when (text = @ss.scan(/SECURITY\b/i)) + action { [:SECURITY, text] } - when (text = @ss.scan(/REPLACE\b/i)) - action { [:REPLACE, text] } + when (text = @ss.scan(/ROW_FORMAT\b/i)) + action { [:ROW_FORMAT, text] } - when (text = @ss.scan(/REPAIR\b/i)) - action { [:REPAIR, text] } + when (text = @ss.scan(/RESTRICT\b/i)) + action { [:RESTRICT, text] } - when (text = @ss.scan(/REORGANIZE\b/i)) - action { [:REORGANIZE, text] } + when (text = @ss.scan(/REPLACE\b/i)) + action { [:REPLACE, text] } - when (text = @ss.scan(/RENAME\b/i)) - action { [:RENAME, text] } + when (text = @ss.scan(/REPAIR\b/i)) + action { [:REPAIR, text] } - when (text = @ss.scan(/REMOVE\b/i)) - action { [:REMOVE, text] } + when (text = @ss.scan(/REORGANIZE\b/i)) + action { [:REORGANIZE, text] } - when (text = @ss.scan(/REFERENCES\b/i)) - action { [:REFERENCES, text] } + when (text = @ss.scan(/RENAME\b/i)) + action { [:RENAME, text] } - when (text = @ss.scan(/REDUNDANT\b/i)) - action { [:REDUNDANT, text] } + when (text = @ss.scan(/REMOVE\b/i)) + action { [:REMOVE, text] } - when (text = @ss.scan(/REBUILD\b/i)) - action { [:REBUILD, text] } + when (text = @ss.scan(/REFERENCES\b/i)) + action { [:REFERENCES, text] } - when (text = @ss.scan(/REAL\b/i)) - action { [:REAL, text] } + when (text = @ss.scan(/REDUNDANT\b/i)) + action { [:REDUNDANT, text] } - when (text = @ss.scan(/PRIMARY\b/i)) - action { [:PRIMARY, text] } + when (text = @ss.scan(/REBUILD\b/i)) + action { [:REBUILD, text] } - when (text = @ss.scan(/PASSWORD\b/i)) - action { [:PASSWORD, text] } + when (text = @ss.scan(/REAL\b/i)) + action { [:REAL, text] } - when (text = @ss.scan(/PARTITIONING\b/i)) - action { [:PARTITIONING, text] } + when (text = @ss.scan(/PRIMARY\b/i)) + action { [:PRIMARY, text] } - when (text = @ss.scan(/PARTITION\b/i)) - action { [:PARTITION, text] } + when (text = @ss.scan(/PASSWORD\b/i)) + action { [:PASSWORD, text] } - when (text = @ss.scan(/PARTIAL\b/i)) - action { [:PARTIAL, text] } + when (text = @ss.scan(/PARTITIONING\b/i)) + action { [:PARTITIONING, text] } - when (text = @ss.scan(/PARSER\b/i)) - action { [:PARSER, text] } + when (text = @ss.scan(/PARTITION\b/i)) + action { [:PARTITION, text] } - when (text = @ss.scan(/PACK_KEYS\b/i)) - action { [:PACK_KEYS, text] } + when (text = @ss.scan(/PARTIAL\b/i)) + action { [:PARTIAL, text] } - when (text = @ss.scan(/ORDER\b/i)) - action { [:ORDER, text] } + when (text = @ss.scan(/PARSER\b/i)) + action { [:PARSER, text] } - when (text = @ss.scan(/OR\b/i)) - action { [:OR, text] } + when (text = @ss.scan(/PACK_KEYS\b/i)) + action { [:PACK_KEYS, text] } - when (text = @ss.scan(/OPTION\b/i)) - action { [:OPTION, text] } + when (text = @ss.scan(/ORDER\b/i)) + action { [:ORDER, text] } - when (text = @ss.scan(/OPTIMIZE\b/i)) - action { [:OPTIMIZE, text] } + when (text = @ss.scan(/OR\b/i)) + action { [:OR, text] } - when (text = @ss.scan(/ONLINE\b/i)) - action { [:ONLINE, text] } + when (text = @ss.scan(/OPTION\b/i)) + action { [:OPTION, text] } - when (text = @ss.scan(/ON\b/i)) - action { [:ON, text] } + when (text = @ss.scan(/OPTIMIZE\b/i)) + action { [:OPTIMIZE, text] } - when (text = @ss.scan(/OFFLINE\b/i)) - action { [:OFFLINE, text] } + when (text = @ss.scan(/ONLINE\b/i)) + action { [:ONLINE, text] } - when (text = @ss.scan(/NUMERIC\b/i)) - action { [:NUMERIC, text] } + when (text = @ss.scan(/ON\b/i)) + action { [:ON, text] } - when (text = @ss.scan(/NULL\b/i)) - action { [:NULL, text] } + when (text = @ss.scan(/OFFLINE\b/i)) + action { [:OFFLINE, text] } - when (text = @ss.scan(/NOT\b/i)) - action { [:NOT, text] } + when (text = @ss.scan(/NUMERIC\b/i)) + action { [:NUMERIC, text] } - when (text = @ss.scan(/NODEGROUP\b/i)) - action { [:NODEGROUP, text] } + when (text = @ss.scan(/NULL\b/i)) + action { [:NULL, text] } - when (text = @ss.scan(/NO\b/i)) - action { [:NO, text] } + when (text = @ss.scan(/NOT\b/i)) + action { [:NOT, text] } - when (text = @ss.scan(/MODIFY\b/i)) - action { [:MODIFY, text] } + when (text = @ss.scan(/NODEGROUP\b/i)) + action { [:NODEGROUP, text] } - when (text = @ss.scan(/MIN_ROWS\b/i)) - action { [:MIN_ROWS, text] } + when (text = @ss.scan(/NO\b/i)) + action { [:NO, text] } - when (text = @ss.scan(/MERGE\b/i)) - action { [:MERGE, text] } + when (text = @ss.scan(/MODIFY\b/i)) + action { [:MODIFY, text] } - when (text = @ss.scan(/MEMORY\b/i)) - action { [:MEMORY, text] } + when (text = @ss.scan(/MIN_ROWS\b/i)) + action { [:MIN_ROWS, text] } - when (text = @ss.scan(/MEDIUMTEXT\b/i)) - action { [:MEDIUMTEXT, text] } + when (text = @ss.scan(/MERGE\b/i)) + action { [:MERGE, text] } - when (text = @ss.scan(/MEDIUMINT\b/i)) - action { [:MEDIUMINT, text] } + when (text = @ss.scan(/MEMORY\b/i)) + action { [:MEMORY, text] } - when (text = @ss.scan(/MEDIUMBLOB\b/i)) - action { [:MEDIUMBLOB, text] } + when (text = @ss.scan(/MEDIUMTEXT\b/i)) + action { [:MEDIUMTEXT, text] } - when (text = @ss.scan(/MAX_ROWS\b/i)) - action { [:MAX_ROWS, text] } + when (text = @ss.scan(/MEDIUMINT\b/i)) + action { [:MEDIUMINT, text] } - when (text = @ss.scan(/MAXVALUE\b/i)) - action { [:MAXVALUE, text] } + when (text = @ss.scan(/MEDIUMBLOB\b/i)) + action { [:MEDIUMBLOB, text] } - when (text = @ss.scan(/MATCH\b/i)) - action { [:MATCH, text] } + when (text = @ss.scan(/MAX_ROWS\b/i)) + action { [:MAX_ROWS, text] } - when (text = @ss.scan(/LONGTEXT\b/i)) - action { [:LONGTEXT, text] } + when (text = @ss.scan(/MAXVALUE\b/i)) + action { [:MAXVALUE, text] } - when (text = @ss.scan(/LONGBLOB\b/i)) - action { [:LONGBLOB, text] } + when (text = @ss.scan(/MATCH\b/i)) + action { [:MATCH, text] } - when (text = @ss.scan(/LOCAL\b/i)) - action { [:LOCAL, text] } + when (text = @ss.scan(/LONGTEXT\b/i)) + action { [:LONGTEXT, text] } - when (text = @ss.scan(/LIKE\b/i)) - action { [:LIKE, text] } + when (text = @ss.scan(/LONGBLOB\b/i)) + action { [:LONGBLOB, text] } - when (text = @ss.scan(/LESS\b/i)) - action { [:LESS, text] } + when (text = @ss.scan(/LOCAL\b/i)) + action { [:LOCAL, text] } - when (text = @ss.scan(/LATIN1\b/i)) - action { [:LATIN1, text] } + when (text = @ss.scan(/LIKE\b/i)) + action { [:LIKE, text] } - when (text = @ss.scan(/LAST\b/i)) - action { [:LAST, text] } + when (text = @ss.scan(/LESS\b/i)) + action { [:LESS, text] } - when (text = @ss.scan(/KEY_BLOCK_SIZE\b/i)) - action { [:KEY_BLOCK_SIZE, text] } + when (text = @ss.scan(/LATIN1\b/i)) + action { [:LATIN1, text] } - when (text = @ss.scan(/KEYS\b/i)) - action { [:KEYS, text] } + when (text = @ss.scan(/LAST\b/i)) + action { [:LAST, text] } - when (text = @ss.scan(/KEY\b/i)) - action { [:KEY, text] } + when (text = @ss.scan(/KEY_BLOCK_SIZE\b/i)) + action { [:KEY_BLOCK_SIZE, text] } - when (text = @ss.scan(/INVOKER\b/i)) - action { [:INVOKER, text] } + when (text = @ss.scan(/KEYS\b/i)) + action { [:KEYS, text] } - when (text = @ss.scan(/INTO\b/i)) - action { [:INTO, text] } + when (text = @ss.scan(/KEY\b/i)) + action { [:KEY, text] } - when (text = @ss.scan(/INTEGER\b/i)) - action { [:INTEGER, text] } + when (text = @ss.scan(/INVOKER\b/i)) + action { [:INVOKER, text] } - when (text = @ss.scan(/INT\b/i)) - action { [:INT, text] } + when (text = @ss.scan(/INTO\b/i)) + action { [:INTO, text] } - when (text = @ss.scan(/INSERT_METHOD\b/i)) - action { [:INSERT_METHOD, text] } + when (text = @ss.scan(/INTEGER\b/i)) + action { [:INTEGER, text] } - when (text = @ss.scan(/INNODB\b/i)) - action { [:INNODB, text] } + when (text = @ss.scan(/INT\b/i)) + action { [:INT, text] } - when (text = @ss.scan(/INDEX\b/i)) - action { [:INDEX, text] } + when (text = @ss.scan(/INSERT_METHOD\b/i)) + action { [:INSERT_METHOD, text] } - when (text = @ss.scan(/IN\b/i)) - action { [:IN, text] } + when (text = @ss.scan(/INNODB\b/i)) + action { [:INNODB, text] } - when (text = @ss.scan(/IMPORT\b/i)) - action { [:IMPORT, text] } + when (text = @ss.scan(/INDEX\b/i)) + action { [:INDEX, text] } - when (text = @ss.scan(/IGNORE\b/i)) - action { [:IGNORE, text] } + when (text = @ss.scan(/IN\b/i)) + action { [:IN, text] } - when (text = @ss.scan(/IF\b/i)) - action { [:IF, text] } + when (text = @ss.scan(/IMPORT\b/i)) + action { [:IMPORT, text] } - when (text = @ss.scan(/HASH\b/i)) - action { [:HASH, text] } + when (text = @ss.scan(/IGNORE\b/i)) + action { [:IGNORE, text] } - when (text = @ss.scan(/FULLTEXT\b/i)) - action { [:FULLTEXT, text] } + when (text = @ss.scan(/IF\b/i)) + action { [:IF, text] } - when (text = @ss.scan(/FULL\b/i)) - action { [:FULL, text] } + when (text = @ss.scan(/HASH\b/i)) + action { [:HASH, text] } - when (text = @ss.scan(/FOREIGN\b/i)) - action { [:FOREIGN, text] } + when (text = @ss.scan(/FULLTEXT\b/i)) + action { [:FULLTEXT, text] } - when (text = @ss.scan(/FLOAT\b/i)) - action { [:FLOAT, text] } + when (text = @ss.scan(/FULL\b/i)) + action { [:FULL, text] } - when (text = @ss.scan(/FIXED\b/i)) - action { [:FIXED, text] } + when (text = @ss.scan(/FOREIGN\b/i)) + action { [:FOREIGN, text] } - when (text = @ss.scan(/FIRST\b/i)) - action { [:FIRST, text] } + when (text = @ss.scan(/FLOAT\b/i)) + action { [:FLOAT, text] } - when (text = @ss.scan(/EXISTS\b/i)) - action { [:EXISTS, text] } + when (text = @ss.scan(/FIXED\b/i)) + action { [:FIXED, text] } - when (text = @ss.scan(/ENUM\b/i)) - action { [:ENUM, text] } + when (text = @ss.scan(/FIRST\b/i)) + action { [:FIRST, text] } - when (text = @ss.scan(/ENGINE\b/i)) - action { [:ENGINE, text] } + when (text = @ss.scan(/EXISTS\b/i)) + action { [:EXISTS, text] } - when (text = @ss.scan(/ENABLE\b/i)) - action { [:ENABLE, text] } + when (text = @ss.scan(/ENUM\b/i)) + action { [:ENUM, text] } - when (text = @ss.scan(/DYNAMIC\b/i)) - action { [:DYNAMIC, text] } + when (text = @ss.scan(/ENGINE\b/i)) + action { [:ENGINE, text] } - when (text = @ss.scan(/DROP\b/i)) - action { [:DROP, text] } + when (text = @ss.scan(/ENABLE\b/i)) + action { [:ENABLE, text] } - when (text = @ss.scan(/DOUBLE\b/i)) - action { [:DOUBLE, text] } + when (text = @ss.scan(/DYNAMIC\b/i)) + action { [:DYNAMIC, text] } - when (text = @ss.scan(/DISK\b/i)) - action { [:DISK, text] } + when (text = @ss.scan(/DROP\b/i)) + action { [:DROP, text] } - when (text = @ss.scan(/DISCARD\b/i)) - action { [:DISCARD, text] } + when (text = @ss.scan(/DOUBLE\b/i)) + action { [:DOUBLE, text] } - when (text = @ss.scan(/DISABLE\b/i)) - action { [:DISABLE, text] } + when (text = @ss.scan(/DISK\b/i)) + action { [:DISK, text] } - when (text = @ss.scan(/DIRECTORY\b/i)) - action { [:DIRECTORY, text] } + when (text = @ss.scan(/DISCARD\b/i)) + action { [:DISCARD, text] } - when (text = @ss.scan(/DESC\b/i)) - action { [:DESC, text] } + when (text = @ss.scan(/DISABLE\b/i)) + action { [:DISABLE, text] } - when (text = @ss.scan(/DELETE\b/i)) - action { [:DELETE, text] } + when (text = @ss.scan(/DIRECTORY\b/i)) + action { [:DIRECTORY, text] } - when (text = @ss.scan(/DELAY_KEY_WRITE\b/i)) - action { [:DELAY_KEY_WRITE, text] } + when (text = @ss.scan(/DESC\b/i)) + action { [:DESC, text] } - when (text = @ss.scan(/DEFINER\b/i)) - action { [:DEFINER, text] } + when (text = @ss.scan(/DELETE\b/i)) + action { [:DELETE, text] } - when (text = @ss.scan(/DEFAULT\b/i)) - action { [:DEFAULT, text] } + when (text = @ss.scan(/DELAY_KEY_WRITE\b/i)) + action { [:DELAY_KEY_WRITE, text] } - when (text = @ss.scan(/DECIMAL\b/i)) - action { [:DECIMAL, text] } + when (text = @ss.scan(/DEFINER\b/i)) + action { [:DEFINER, text] } - when (text = @ss.scan(/DATETIME\b/i)) - action { [:DATETIME, text] } + when (text = @ss.scan(/DEFAULT\b/i)) + action { [:DEFAULT, text] } - when (text = @ss.scan(/DATE\b/i)) - action { [:DATE, text] } + when (text = @ss.scan(/DECIMAL\b/i)) + action { [:DECIMAL, text] } - when (text = @ss.scan(/DATA\b/i)) - action { [:DATA, text] } + when (text = @ss.scan(/DATETIME\b/i)) + action { [:DATETIME, text] } - when (text = @ss.scan(/CURRENT_USER\b/i)) - action { [:CURRENT_USER, text] } + when (text = @ss.scan(/DATE\b/i)) + action { [:DATE, text] } - when (text = @ss.scan(/CURRENT_TIMESTAMP\b/i)) - action { [:CURRENT_TIMESTAMP, text] } + when (text = @ss.scan(/DATA\b/i)) + action { [:DATA, text] } - when (text = @ss.scan(/CREATE\b/i)) - action { [:CREATE, text] } + when (text = @ss.scan(/CURRENT_USER\b/i)) + action { [:CURRENT_USER, text] } - when (text = @ss.scan(/CONVERT\b/i)) - action { [:CONVERT, text] } + when (text = @ss.scan(/CURRENT_TIMESTAMP\b/i)) + action { [:CURRENT_TIMESTAMP, text] } - when (text = @ss.scan(/CONSTRAINT\b/i)) - action { [:CONSTRAINT, text] } + when (text = @ss.scan(/CREATE\b/i)) + action { [:CREATE, text] } - when (text = @ss.scan(/CONNECTION\b/i)) - action { [:CONNECTION, text] } + when (text = @ss.scan(/CONVERT\b/i)) + action { [:CONVERT, text] } - when (text = @ss.scan(/COMPRESSED\b/i)) - action { [:COMPRESSED, text] } + when (text = @ss.scan(/CONSTRAINT\b/i)) + action { [:CONSTRAINT, text] } - when (text = @ss.scan(/COMPACT\b/i)) - action { [:COMPACT, text] } + when (text = @ss.scan(/CONNECTION\b/i)) + action { [:CONNECTION, text] } - when (text = @ss.scan(/COMMENT\b/i)) - action { [:COMMENT, text] } + when (text = @ss.scan(/COMPRESSED\b/i)) + action { [:COMPRESSED, text] } - when (text = @ss.scan(/COLUMN_FORMAT\b/i)) - action { [:COLUMN_FORMAT, text] } + when (text = @ss.scan(/COMPACT\b/i)) + action { [:COMPACT, text] } - when (text = @ss.scan(/COLUMN\b/i)) - action { [:COLUMN, text] } + when (text = @ss.scan(/COMMENT\b/i)) + action { [:COMMENT, text] } - when (text = @ss.scan(/COLLATE\b/i)) - action { [:COLLATE, text] } + when (text = @ss.scan(/COLUMN_FORMAT\b/i)) + action { [:COLUMN_FORMAT, text] } - when (text = @ss.scan(/COALESCE\b/i)) - action { [:COALESCE, text] } + when (text = @ss.scan(/COLUMN\b/i)) + action { [:COLUMN, text] } - when (text = @ss.scan(/CHECKSUM\b/i)) - action { [:CHECKSUM, text] } + when (text = @ss.scan(/COLLATE\b/i)) + action { [:COLLATE, text] } - when (text = @ss.scan(/CHECK\b/i)) - action { [:CHECK, text] } + when (text = @ss.scan(/COALESCE\b/i)) + action { [:COALESCE, text] } - when (text = @ss.scan(/CHAR\b/i)) - action { [:CHAR, text] } + when (text = @ss.scan(/CHECKSUM\b/i)) + action { [:CHECKSUM, text] } - when (text = @ss.scan(/CHANGE\b/i)) - action { [:CHANGE, text] } + when (text = @ss.scan(/CHECK\b/i)) + action { [:CHECK, text] } - when (text = @ss.scan(/CASCADED\b/i)) - action { [:CASCADED, text] } + when (text = @ss.scan(/CHAR\b/i)) + action { [:CHAR, text] } - when (text = @ss.scan(/CASCADE\b/i)) - action { [:CASCADE, text] } + when (text = @ss.scan(/CHANGE\b/i)) + action { [:CHANGE, text] } - when (text = @ss.scan(/BY\b/i)) - action { [:BY, text] } + when (text = @ss.scan(/CASCADED\b/i)) + action { [:CASCADED, text] } - when (text = @ss.scan(/BTREE\b/i)) - action { [:BTREE, text] } + when (text = @ss.scan(/CASCADE\b/i)) + action { [:CASCADE, text] } - when (text = @ss.scan(/BLOB\b/i)) - action { [:BLOB, text] } + when (text = @ss.scan(/BY\b/i)) + action { [:BY, text] } - when (text = @ss.scan(/BIT\b/i)) - action { [:BIT, text] } + when (text = @ss.scan(/BTREE\b/i)) + action { [:BTREE, text] } - when (text = @ss.scan(/BINARY\b/i)) - action { [:BINARY, text] } + when (text = @ss.scan(/BLOB\b/i)) + action { [:BLOB, text] } - when (text = @ss.scan(/BIGINT\b/i)) - action { [:BIGINT, text] } + when (text = @ss.scan(/BIT\b/i)) + action { [:BIT, text] } - when (text = @ss.scan(/AVG_ROW_LENGTH\b/i)) - action { [:AVG_ROW_LENGTH, text] } + when (text = @ss.scan(/BINARY\b/i)) + action { [:BINARY, text] } - when (text = @ss.scan(/AUTO_INCREMENT\b/i)) - action { [:AUTO_INCREMENT, text] } + when (text = @ss.scan(/BIGINT\b/i)) + action { [:BIGINT, text] } - when (text = @ss.scan(/ASC\b/i)) - action { [:ASC, text] } + when (text = @ss.scan(/AVG_ROW_LENGTH\b/i)) + action { [:AVG_ROW_LENGTH, text] } - when (text = @ss.scan(/AS\b/i)) - action { [:AS, text] } + when (text = @ss.scan(/AUTO_INCREMENT\b/i)) + action { [:AUTO_INCREMENT, text] } - when (text = @ss.scan(/ANALYZE\b/i)) - action { [:ANALYZE, text] } + when (text = @ss.scan(/ASC\b/i)) + action { [:ASC, text] } - when (text = @ss.scan(/ALTER\b/i)) - action { [:ALTER, text] } + when (text = @ss.scan(/AS\b/i)) + action { [:AS, text] } - when (text = @ss.scan(/ALL\b/i)) - action { [:ALL, text] } + when (text = @ss.scan(/ANALYZE\b/i)) + action { [:ANALYZE, text] } - when (text = @ss.scan(/ALGORITHM\b/i)) - action { [:ALGORITHM, text] } + when (text = @ss.scan(/ALTER\b/i)) + action { [:ALTER, text] } - when (text = @ss.scan(/AFTER\b/i)) - action { [:AFTER, text] } + when (text = @ss.scan(/ALL\b/i)) + action { [:ALL, text] } - when (text = @ss.scan(/ADD\b/i)) - action { [:ADD, text] } + when (text = @ss.scan(/ALGORITHM\b/i)) + action { [:ALGORITHM, text] } - when (text = @ss.scan(/ACTION\b/i)) - action { [:ACTION, text] } + when (text = @ss.scan(/AFTER\b/i)) + action { [:AFTER, text] } - when (text = @ss.scan(/,/i)) - action { [:S_COMMA , text] } + when (text = @ss.scan(/ADD\b/i)) + action { [:ADD, text] } - when (text = @ss.scan(/@/i)) - action { [:S_AT , text] } + when (text = @ss.scan(/ACTION\b/i)) + action { [:ACTION, text] } - when (text = @ss.scan(/0+\b/i)) - action { [:S_ZERO , text] } # this must come before S_NAT + when (text = @ss.scan(/,/i)) + action { [:S_COMMA , text] } - when (text = @ss.scan(/1\b/i)) - action { [:S_ONE , text] } # this must come before S_NAT + when (text = @ss.scan(/@/i)) + action { [:S_AT , text] } - when (text = @ss.scan(/\d+/i)) - action { [:S_NAT , text] } # definitely not 0, 1 + when (text = @ss.scan(/0+\b/i)) + action { [:S_ZERO , text] } # this must come before S_NAT - when (text = @ss.scan(/-?\d+\.\d+/i)) - action { [:S_FLOAT , text] } # this must come before S_DOT + when (text = @ss.scan(/1\b/i)) + action { [:S_ONE , text] } # this must come before S_NAT - when (text = @ss.scan(/[\$a-zA-Z0-9_]+/i)) - action { [:S_IDENT_NORMAL , text] } + when (text = @ss.scan(/\d+/i)) + action { [:S_NAT , text] } # definitely not 0, 1 - when (text = @ss.scan(/=/i)) - action { [:S_EQUAL , text] } + when (text = @ss.scan(/-?\d+\.\d+/i)) + action { [:S_FLOAT , text] } # this must come before S_DOT - when (text = @ss.scan(/\(/i)) - action { [:S_LEFT_PAREN , text] } + when (text = @ss.scan(/[\$a-zA-Z0-9_]+/i)) + action { [:S_IDENT_NORMAL , text] } - when (text = @ss.scan(/\)/i)) - action { [:S_RIGHT_PAREN , text] } + when (text = @ss.scan(/=/i)) + action { [:S_EQUAL , text] } - when (text = @ss.scan(/-/i)) - action { [:S_MINUS , text] } + when (text = @ss.scan(/\(/i)) + action { [:S_LEFT_PAREN , text] } - when (text = @ss.scan(/\./i)) - action { [:S_DOT , text] } + when (text = @ss.scan(/\)/i)) + action { [:S_RIGHT_PAREN , text] } - when (text = @ss.scan(/[ \t\n]+/i)) - action { [:S_SPACE, ' '] } # set to one space + when (text = @ss.scan(/-/i)) + action { [:S_MINUS , text] } - else - text = @ss.string[@ss.pos .. -1] - raise ScanError, "can not match: '" + text + "'" - end # if + when (text = @ss.scan(/\./i)) + action { [:S_DOT , text] } - when :A_REM_MULTI - case - when (text = @ss.scan(/\*\/ */i)) - action { @state = :A_NIL; [:S_REM_OUT, ' */ '] } + when (text = @ss.scan(/[ \t\n]+/i)) + action { [:S_SPACE, ' '] } # set to one space - when (text = @ss.scan(/(.+)(?=\*\/ *)/i)) - action { [:S_COMMENT, text] } + + else + text = @ss.string[@ss.pos .. -1] + raise ScanError, "can not match: '" + text + "'" + end # if - else - text = @ss.string[@ss.pos .. -1] - raise ScanError, "can not match: '" + text + "'" - end # if + when :A_REM_MULTI + case + when (text = @ss.scan(/\*\/ */i)) + action { @state = :A_NIL; [:S_REM_OUT, ' */ '] } - when :A_REM_INLINE - case - when (text = @ss.scan(/\n/i)) - action { @state = :A_NIL; [:S_REM_OUT, text] } + when (text = @ss.scan(/(.+)(?=\*\/ *)/i)) + action { [:S_COMMENT, text] } - when (text = @ss.scan(/.*(?=$)/i)) - action { [:S_COMMENT, text] } + + else + text = @ss.string[@ss.pos .. -1] + raise ScanError, "can not match: '" + text + "'" + end # if - else - text = @ss.string[@ss.pos .. -1] - raise ScanError, "can not match: '" + text + "'" - end # if + when :A_REM_INLINE + case + when (text = @ss.scan(/\n/i)) + action { @state = :A_NIL; [:S_REM_OUT, text] } - when :A_BACKTICK - case - when (text = @ss.scan(/``/i)) - action { [:S_IDENT_IN_BACKTICK, text] } + when (text = @ss.scan(/.*(?=$)/i)) + action { [:S_COMMENT, text] } - when (text = @ss.scan(/`/i)) - action { @state = :A_NIL; [:S_BACKTICK_OUT, text] } + + else + text = @ss.string[@ss.pos .. -1] + raise ScanError, "can not match: '" + text + "'" + end # if - when (text = @ss.scan(/[^`]+/i)) - action { [:S_IDENT_IN_BACKTICK, text] } + when :A_BACKTICK + case + when (text = @ss.scan(/``/i)) + action { [:S_IDENT_IN_BACKTICK, text] } - else - text = @ss.string[@ss.pos .. -1] - raise ScanError, "can not match: '" + text + "'" - end # if + when (text = @ss.scan(/`/i)) + action { @state = :A_NIL; [:S_BACKTICK_OUT, text] } - when :A_DOUBLEQUOTE - case - when (text = @ss.scan(/""/i)) - action { [:S_STRING_IN_QUOTE, text] } + when (text = @ss.scan(/[^`]+/i)) + action { [:S_IDENT_IN_BACKTICK, text] } - when (text = @ss.scan(/"/i)) - action { @state = :A_NIL; [:S_DOUBLEQUOTE_OUT, text] } + + else + text = @ss.string[@ss.pos .. -1] + raise ScanError, "can not match: '" + text + "'" + end # if - when (text = @ss.scan(/[^"]*/i)) - action { [:S_STRING_IN_QUOTE, text] } + when :A_DOUBLEQUOTE + case + when (text = @ss.scan(/""/i)) + action { [:S_STRING_IN_QUOTE, text] } - else - text = @ss.string[@ss.pos .. -1] - raise ScanError, "can not match: '" + text + "'" - end # if + when (text = @ss.scan(/"/i)) + action { @state = :A_NIL; [:S_DOUBLEQUOTE_OUT, text] } - when :A_SINGLEQUOTE - case - when (text = @ss.scan(/''/i)) - action { [:S_STRING_IN_QUOTE, text] } + when (text = @ss.scan(/[^"]*/i)) + action { [:S_STRING_IN_QUOTE, text] } - when (text = @ss.scan(/'/i)) - action { @state = :A_NIL; [:S_SINGLEQUOTE_OUT, text] } + + else + text = @ss.string[@ss.pos .. -1] + raise ScanError, "can not match: '" + text + "'" + end # if - when (text = @ss.scan(/[^']*/i)) - action { [:S_STRING_IN_QUOTE, text] } + when :A_SINGLEQUOTE + case + when (text = @ss.scan(/''/i)) + action { [:S_STRING_IN_QUOTE, text] } - else - text = @ss.string[@ss.pos .. -1] - raise ScanError, "can not match: '" + text + "'" - end # if + when (text = @ss.scan(/'/i)) + action { @state = :A_NIL; [:S_SINGLEQUOTE_OUT, text] } - else - raise ScanError, "undefined state: '" + state.to_s + "'" - end # case state - token - end # def _next_token + when (text = @ss.scan(/[^']*/i)) + action { [:S_STRING_IN_QUOTE, text] } + + + else + text = @ss.string[@ss.pos .. -1] + raise ScanError, "can not match: '" + text + "'" + end # if + + else + raise ScanError, "undefined state: '" + state.to_s + "'" + end # case state + token + end # def _next_token def tokenize(code) scan_setup(code) diff --git a/lib/mysql-parser/parser.rb b/lib/mysql-parser/parser.rb index 148754c..0ef71da 100644 --- a/lib/mysql-parser/parser.rb +++ b/lib/mysql-parser/parser.rb @@ -1,7 +1,7 @@ # # DO NOT MODIFY!!!! -# This file is automatically generated by Racc 1.4.15 -# from Racc grammer file "". +# This file is automatically generated by Racc 1.6.0 +# from Racc grammar file "". # require 'racc/parser.rb' @@ -15,7 +15,7 @@ def deep_copy(o) class MySQLParser < Racc::Parser -module_eval(<<'...end mysql.y.rb/module_eval...', 'mysql.y.rb', 1296) +module_eval(<<'...end mysql.y.rb/module_eval...', 'mysql.y.rb', 1300) def initialize(debug: false) @yydebug = debug @phooks = Hash.new @@ -93,8 +93,8 @@ def parse(input) 694, 695, 858, 706, 742, 782, 801, 800, 860, 757, 822, 813, 832, 772, 834, 709, 708, 833, 688, 851, 691, 692, 707, 857, 783, 789, 705, 711, 781, 788, - 817, 734, 730, 726, 722, 837, 721, 720, 732, 731, - 718, 729, 716, 723, 725, 724, 773, 736, 735, 728, + 817, 734, 730, 726, 722, 721, 720, 732, 731, 718, + 729, 716, 723, 837, 725, 724, 773, 736, 735, 728, 719, 717, 767, 790, 853, 838, 690, 864, 766, 749, 868, 702, 779, 712, 830, 836, 740, 746, 798, 821, 808, 816, 715, 703, 791, 713, 774, 850, 866, 769, @@ -112,7 +112,7 @@ def parse(input) 782, 801, 800, 860, 757, 822, 813, 832, 772, 834, 709, 708, 833, 688, 851, 691, 692, 707, 857, 783, 789, 705, 711, 781, 788, 817, 734, 730, 726, 722, - 837, 721, 720, 732, 731, 718, 729, 716, 723, 725, + 721, 720, 732, 731, 718, 729, 716, 723, 837, 725, 724, 773, 736, 735, 728, 719, 717, 767, 790, 853, 838, 690, 864, 766, 749, 868, 702, 779, 712, 830, 836, 740, 746, 798, 821, 808, 816, 715, 703, 791, @@ -130,8 +130,8 @@ def parse(input) 694, 695, 858, 706, 742, 782, 801, 800, 860, 757, 822, 813, 832, 772, 834, 709, 708, 833, 688, 851, 691, 692, 707, 857, 783, 789, 705, 711, 781, 788, - 817, 734, 730, 726, 722, 837, 721, 720, 732, 731, - 718, 729, 716, 723, 725, 724, 773, 736, 735, 728, + 817, 734, 730, 726, 722, 721, 720, 732, 731, 718, + 729, 716, 723, 837, 725, 724, 773, 736, 735, 728, 719, 717, 767, 790, 853, 838, 690, 864, 766, 749, 868, 702, 779, 712, 830, 836, 740, 746, 798, 821, 808, 816, 715, 703, 791, 713, 774, 850, 866, 769, @@ -149,188 +149,132 @@ def parse(input) 782, 801, 800, 860, 757, 822, 813, 832, 772, 834, 709, 708, 833, 688, 851, 691, 692, 707, 857, 783, 789, 705, 711, 781, 788, 817, 734, 730, 726, 722, - 837, 721, 720, 732, 731, 718, 729, 716, 723, 725, + 721, 720, 732, 731, 718, 729, 716, 723, 837, 725, 724, 773, 736, 735, 728, 719, 717, 767, 790, 853, - 125, -65, 510, 220, 894, -65, 224, -65, 664, 922, - 388, 224, 112, 113, 232, 441, 228, 229, 441, 73, - 3, 443, 30, 232, 443, 228, 229, 3, 232, -65, - 228, 229, 446, 231, 445, 446, -65, 445, -65, 301, - -65, 26, 231, 675, 76, 112, 113, 231, 675, 76, - 675, 76, 232, 444, 400, 230, 444, 232, 76, 228, - 229, 300, 389, 3, 230, 675, 76, 115, 129, 230, - 130, 231, 892, 893, 3, 1099, 231, 920, 921, 32, - 663, 3, 450, 76, 138, 450, 447, 448, 449, 447, - 448, 449, 163, 53, 54, 675, 76, 56, 230, -152, - 115, 76, 56, 401, 56, 389, 675, 76, 76, 53, - 54, 56, 76, 76, 76, 53, 54, -245, -245, 56, - 169, 140, 76, 141, 142, 143, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 56, 76, -152, 53, - 54, 76, -152, 53, 54, 946, 56, 497, 498, 56, - 76, 3, -152, 76, 56, 76, 129, 164, 130, 76, - 56, 56, 56, 76, 115, 56, 56, 56, 56, 76, - 452, 3, 232, 452, 1046, 56, 3, 76, 165, 166, - 232, -152, 291, 1046, 115, 167, 292, 296, 295, 189, - 56, 231, 56, 205, 56, -152, 56, 202, 187, 231, - 167, 3, 163, 56, 53, 54, 56, 76, 56, 167, - 76, 129, 56, 130, 3, 76, 56, 76, 3, 186, - 188, 190, 56, 191, 192, 193, 76, -245, 169, 195, - 56, 140, 76, 141, 142, 143, 145, 146, 147, 148, + 125, -65, 510, 220, 895, -65, 224, -65, 664, 1101, + 923, 224, 73, -33, 30, 441, 947, 301, 441, 301, + 3, 443, 76, 232, 443, 228, 229, 4, 232, -65, + 228, 229, 446, 26, 445, 446, -65, 445, -65, 300, + -65, 300, 231, 112, 113, 675, 76, 231, 112, 113, + 18, 675, 76, 444, 169, 115, 444, 675, 76, 53, + 54, 3, 675, 76, 230, 675, 76, 3, 76, 230, + 388, 32, 893, 894, 232, 56, 228, 229, 921, 922, + 663, 294, 450, 3, 295, 450, 447, 448, 449, 447, + 448, 449, 138, 231, 675, 76, 53, 54, 115, 56, + 163, 76, 400, 115, 232, 56, 228, 229, 76, 53, + 54, 56, 56, 76, 76, 230, 56, 115, 76, 56, + 307, 56, 389, 231, 1048, -245, -245, 53, 54, 140, + 76, 141, 142, 143, 145, 146, 147, 148, 149, 150, + 151, 152, 153, 154, 76, 230, 497, 498, 56, 56, + 167, 401, 389, 76, 56, 129, 291, 130, 76, -152, + 292, 56, 56, 76, 115, 164, 56, 56, 1048, 232, + 452, 56, 232, 452, 53, 54, 53, 54, 53, 54, + 56, 76, 24, 56, 3, 76, 165, 166, 231, -152, + 218, 231, 219, 167, 167, 76, -39, 56, -152, 26, + 27, 28, 169, 27, 28, 343, 56, 344, 3, 189, + 345, 56, -152, 205, 27, 28, 56, 202, 187, -50, + -50, -50, 163, 53, 54, 53, 54, 56, -152, 56, + 76, 56, 53, 54, 56, 76, 169, -50, 56, 186, + 188, 190, -152, 191, 192, 193, 76, -245, 56, 195, + 76, 140, 76, 141, 142, 143, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 76, 197, 198, 199, - 200, 201, 203, 204, 206, 1016, 343, 56, 344, 3, - 56, 345, 384, 56, 1012, 1013, 172, 164, 56, 1017, - 56, 187, -33, 115, 76, 163, 307, 530, 301, 56, - 931, 932, 76, 53, 54, 56, 53, 54, 165, 166, - 163, 76, 383, 188, 190, 167, 191, 192, 193, 56, - 300, 76, 195, 76, 140, 3, 141, 142, 143, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 140, - 24, 141, 142, 143, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, -39, 56, 56, 26, 1016, 56, - 164, 27, 28, 3, 56, 115, 53, 54, 307, 172, - 497, 498, 1017, 163, 56, 164, 56, -50, -50, -50, - 3, 165, 166, 76, 53, 54, 53, 54, 167, 3, - 76, 76, 163, 53, 54, -50, 165, 166, -245, 76, - 76, 76, 140, 167, 141, 142, 143, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, -245, -245, 56, - 76, 140, 169, 141, 142, 143, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 56, 56, 164, 56, - 3, 1132, 340, 56, 56, 3, 56, 330, 497, 498, - 3, 499, 56, 56, 56, 1132, 129, 164, 130, 165, - 166, 112, 113, 1133, 53, 54, 167, 76, 76, 53, - 54, 76, 76, 56, 3, 112, 113, 1133, 165, 166, - 76, 340, 497, 498, 1060, 167, 330, 1061, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 323, 324, 325, 326, 327, 328, 329, 331, 332, 333, - 334, 335, 336, 337, 338, 339, 341, 56, 340, 76, - 56, 56, 56, 330, 56, 56, 3, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, 329, 331, 332, 333, 334, - 335, 336, 337, 338, 339, 341, 76, 340, 218, 506, - 219, 507, 330, 508, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, - 327, 328, 329, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 341, 53, 54, 76, 76, 513, 514, 515, - 516, 517, 518, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 331, 332, 333, 334, 335, 336, 337, 338, - 339, 341, 396, 395, 232, 395, 232, 1132, 393, 129, - 393, 130, 14, 3, 497, 498, 56, 499, 218, 56, - 219, 497, 498, 231, 499, 231, 15, 112, 113, 1133, - 16, 879, 129, 115, 130, 17, 307, 882, 497, 498, - 885, 499, 452, 882, 497, 498, 885, 499, 253, 252, - 879, 129, 389, 130, 389, 3, 882, 497, 498, 885, - 499, 452, 879, 129, 115, 130, 3, 307, 882, 497, - 498, 885, 499, 452, 76, 103, 104, 105, 650, 651, - 652, 653, 76, 129, 3, 130, 650, 651, 652, 653, - 76, 44, 45, 46, 650, 651, 652, 653, 497, 498, - 3, 499, 497, 498, 115, 499, 115, 307, 115, 307, - 3, 307, 497, 498, 115, 499, 115, 307, 172, 307, - 497, 498, 3, 499, 497, 498, 3, 499, 497, 498, - 885, 499, 115, 76, 115, 307, 530, 307, 294, 97, - 98, 295, 497, 498, 885, 499, 891, 890, 521, 889, - 497, 498, 169, 499, 497, 498, 84, 499, 497, 498, - 115, 499, 115, 307, 129, 307, 130, 129, 218, 130, - 219, 129, 129, 130, 130, 129, 84, 130, 1113, 1114, - 1115, 951, 3, 952, 1120, 1121, 931, 932, 27, 28, - 378, 379, 27, 28, 931, 932, 3, 3, 536, 3, + 200, 201, 203, 204, 206, 506, 56, 507, 56, 508, + 497, 498, 384, 56, 499, 56, 34, 164, 56, 53, + 54, 187, 53, 54, 76, 163, 53, 54, 76, 56, + 76, 76, 76, 56, 76, 56, 53, 54, 165, 166, + 76, 76, 383, 188, 190, 167, 191, 192, 193, 56, + 76, 76, 195, 76, 140, 76, 141, 142, 143, 145, + 146, 147, 148, 149, 150, 151, 152, 153, 154, 129, + 37, 130, 56, 232, 218, 56, 219, 56, 3, 56, + 76, 56, 76, 56, 56, 56, 39, 56, 163, 56, + 164, 3, 231, 56, 56, 44, 45, 46, 76, 53, + 54, 76, 76, 56, 56, 76, 56, 163, 56, 76, + 3, 165, 166, -245, -245, 97, 98, 140, 167, 141, + 142, 143, 145, 146, 147, 148, 149, 150, 151, 152, + 153, 154, -245, 56, 76, 56, 140, 530, 141, 142, + 143, 145, 146, 147, 148, 149, 150, 151, 152, 153, + 154, 56, 56, 164, 56, 56, 497, 498, 56, 218, + 499, 219, 56, 396, 14, 3, 395, 232, 395, 232, + 163, 393, 164, 393, 165, 166, 1134, 3, 15, 497, + 498, 167, 16, 499, 48, 76, 231, 17, 231, 650, + 651, 652, 653, 165, 166, 3, 112, 113, 1135, 140, + 167, 141, 142, 143, 145, 146, 147, 148, 149, 150, + 151, 152, 153, 154, 3, 389, 1134, 389, 1018, 1134, + 340, 59, 882, 497, 498, 330, 886, 499, 61, 172, + 115, 1018, 1019, 307, 3, 164, 112, 113, 1135, 112, + 113, 1135, 172, 63, 129, 1019, 130, 253, 252, 882, + 497, 498, 885, 886, 499, 452, 165, 166, 76, 340, + 3, 497, 498, 167, 330, 499, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, + 325, 326, 327, 328, 329, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 341, 65, 340, 76, 497, 498, + 115, 330, 499, 307, 3, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, + 326, 327, 328, 329, 331, 332, 333, 334, 335, 336, + 337, 338, 339, 341, 76, 340, 952, 497, 498, 953, + 330, 499, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, + 329, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 341, 76, 129, 76, 130, 650, 651, 652, 653, 296, + 295, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, + 331, 332, 333, 334, 335, 336, 337, 338, 339, 341, + 129, 115, 130, 3, 307, 882, 497, 498, 885, 886, + 499, 452, 129, 115, 130, 3, 307, 882, 497, 498, + 885, 886, 499, 452, 76, 103, 104, 105, 650, 651, + 652, 653, 513, 514, 515, 516, 517, 518, 497, 498, + 497, 498, 499, 70, 499, 497, 498, 497, 498, 499, + 3, 499, 497, 498, 497, 498, 499, 886, 499, 497, + 498, 78, 886, 499, 892, 891, 115, 890, 115, 307, + 115, 307, 115, 307, 115, 307, 1062, 307, 115, 1063, + 115, 307, 76, 307, 115, 530, 129, 307, 130, 129, + 129, 130, 130, 129, 129, 130, 130, 129, 129, 130, + 130, 129, 3, 130, 1115, 1116, 1117, 378, 379, 497, + 498, 497, 498, 932, 933, 932, 933, 932, 933, 1014, + 1015, 1122, 1123, 81, 3, 84, 3, 87, 3, 3, + 70, 3, 3, 100, 3, 84, 3, 3, 116, 119, + 3, 3, 123, 3, 3, 3, 170, 172, 3, 3, + 3, 3, 3, 3, 3, 213, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 262, + 266, 115, 3, 3, 3, 3, 3, 3, 3, 3, + 277, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 253, 169, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 355, 356, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 3, 3, 84, 84, + 84, 84, 377, 3, 3, 389, 389, 397, 398, 402, + 3, 389, 405, 406, 407, 408, 409, 410, 411, 412, + 413, 414, 415, 3, 3, 3, 3, 424, 3, 426, + 427, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 84, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 571, 3, 3, 3, 307, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 169, 169, - 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, - 169, 169, 169, 169, 169, 169, 169, 169, 617, 617, - 617, 617, 169, 169, 624, 626, 169, 84, 84, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 76, 3, 169, 3, 169, 666, - 667, 671, 76, 3, 452, 886, 887, 895, 898, 898, - 617, 617, 905, 3, 3, 3, 172, 172, 3, 3, - 3, 3, 936, 3, 3, 3, 3, 115, 3, 3, - 115, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 307, 964, 3, 964, 115, 969, 3, 172, - 172, 169, 3, 3, 3, 115, 3, 3, 307, 3, - 990, 991, 3, 3, 3, 3, 3, 905, 905, 172, - 3, 3, 969, 169, 307, 76, 969, 969, 1031, 3, - 3, 3, 3, 1038, 936, 3, 84, 1044, 3, 3, - 169, 3, 164, 936, 169, 1066, 1069, 140, 3, 3, - 3, 3, 141, 1081, 169, 1066, 84, 165, 3, 1094, - 166, 1104, 3, 1106, 3, 3, 3, 1117, 307, 3, - 3, 3, 84, 3, 3, 3, 1135, 3, 3, 3, - 452, 1140, 1141, 3, 3, 84, 4, 18, 3, 3, - 3, 3, 34, 37, 3, 39, 3, 3, 3, 3, - 48, 3, 3, 59, 61, 3, 63, 3, 65, 3, - 3, 3, 70, 3, 78, 3, 81, 3, 84, 3, - 87, 3, 3, 70, 3, 3, 100, 3, 84, 3, - 3, 116, 119, 3, 3, 123, 3, 3, 3, 170, - 172, 3, 3, 3, 3, 3, 3, 3, 213, 3, + 3, 3, 3, 3, 3, 3, 172, 3, 3, 521, + 169, 84, 84, 3, 3, 3, 536, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 84, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 571, 3, 3, 3, 307, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 169, 169, 169, 169, + 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, + 169, 169, 169, 169, 169, 169, 617, 617, 617, 617, + 169, 169, 624, 626, 169, 84, 84, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 84, 76, 3, 169, 3, 169, 666, 667, 671, + 76, 3, 452, 887, 888, 896, 899, 899, 617, 617, + 906, 3, 3, 3, 172, 172, 3, 3, 3, 3, + 937, 3, 3, 3, 3, 115, 3, 3, 115, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 262, 266, 115, 3, 3, 3, 3, 3, - 3, 3, 3, 277, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 253, 169, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 355, 356, 84, 84, - 84, 84, 84, 84, 84, 84, 84, 84, 84, 3, - 3, 84, 84, 84, 84, 377, 3, 3, 389, 389, - 397, 398, 402, 3, 389, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 3, 3, 3, 3, - 424, 3, 426, 427, 3, 3, 3, 3, 3, 3, - 3, 3, 3 ] + 307, 965, 3, 965, 115, 970, 3, 172, 172, 169, + 3, 3, 3, 115, 3, 3, 307, 3, 991, 992, + 3, 169, 3, 3, 3, 3, 906, 906, 172, 3, + 3, 970, 169, 307, 76, 970, 970, 1033, 3, 3, + 3, 3, 1040, 937, 3, 84, 1046, 3, 3, 169, + 3, 164, 937, 169, 1068, 1071, 140, 3, 3, 3, + 3, 141, 1083, 169, 1068, 84, 165, 3, 1096, 166, + 1106, 3, 1108, 3, 3, 3, 1119, 307, 3, 3, + 3, 84, 3, 3, 3, 1137, 3, 3, 3, 452, + 1142, 1143, 3, 3 ] racc_action_check = [ - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, - 873, 873, 873, 873, 873, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, - 685, 685, 685, 685, 685, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, @@ -349,199 +293,255 @@ def parse(input) 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 102, 139, 364, 137, 584, 139, 137, 139, 543, 645, - 269, 306, 117, 117, 269, 310, 269, 269, 432, 53, - 319, 310, 20, 137, 432, 137, 137, 320, 306, 139, - 306, 306, 310, 269, 310, 432, 139, 432, 139, 217, - 139, 20, 137, 560, 560, 89, 89, 306, 561, 561, - 562, 562, 485, 310, 275, 269, 432, 537, 627, 537, - 537, 217, 269, 321, 137, 563, 563, 117, 623, 306, - 623, 485, 584, 584, 53, 1090, 537, 645, 645, 20, - 543, 322, 310, 549, 107, 432, 310, 310, 310, 432, - 432, 432, 107, 122, 122, 564, 564, 560, 537, 269, - 89, 1054, 561, 275, 562, 537, 566, 566, 137, 93, - 93, 627, 934, 306, 102, 33, 33, 107, 107, 563, - 1090, 107, 227, 107, 107, 107, 107, 107, 107, 107, - 107, 107, 107, 107, 107, 107, 549, 72, 269, 180, - 180, 249, 537, 86, 86, 684, 122, 364, 364, 564, - 1125, 323, 269, 54, 1054, 625, 102, 107, 102, 350, - 566, 137, 93, 657, 139, 934, 306, 102, 33, 213, - 310, 324, 349, 432, 1084, 227, 325, 404, 107, 107, - 348, 537, 211, 1037, 684, 107, 211, 215, 215, 121, - 72, 349, 180, 121, 249, 537, 86, 121, 121, 348, - 1084, 326, 121, 1125, 99, 99, 54, 570, 625, 1037, - 656, 213, 350, 213, 327, 567, 657, 1075, 328, 121, - 121, 121, 213, 121, 121, 121, 912, 121, 107, 121, - 404, 121, 1063, 121, 121, 121, 121, 121, 121, 121, - 121, 121, 121, 121, 121, 121, 989, 121, 121, 121, - 121, 121, 121, 121, 121, 1010, 226, 99, 226, 329, - 570, 226, 267, 656, 979, 979, 1010, 121, 567, 1010, - 1075, 267, 297, 908, 376, 267, 908, 376, 297, 912, - 658, 658, 73, 181, 181, 1063, 69, 69, 121, 121, - 236, 390, 267, 267, 267, 121, 267, 267, 267, 989, - 297, 391, 267, 544, 267, 330, 267, 267, 267, 267, - 267, 267, 267, 267, 267, 267, 267, 267, 267, 236, - 19, 236, 236, 236, 236, 236, 236, 236, 236, 236, - 236, 236, 236, 236, 19, 73, 181, 19, 984, 69, - 267, 19, 19, 331, 390, 1040, 235, 235, 1040, 984, - 362, 362, 984, 185, 391, 236, 544, 19, 19, 19, - 332, 267, 267, 386, 114, 114, 646, 646, 267, 333, - 940, 942, 135, 399, 399, 19, 236, 236, 185, 489, - 491, 540, 185, 236, 185, 185, 185, 185, 185, 185, - 185, 185, 185, 185, 185, 185, 185, 135, 135, 235, - 88, 135, 386, 135, 135, 135, 135, 135, 135, 135, - 135, 135, 135, 135, 135, 135, 386, 114, 185, 646, - 334, 1143, 665, 940, 942, 335, 399, 665, 967, 967, - 336, 967, 489, 491, 540, 1127, 971, 135, 971, 185, - 185, 1143, 1143, 1143, 1042, 1042, 185, 394, 290, 380, - 380, 978, 392, 88, 337, 1127, 1127, 1127, 135, 135, - 665, 557, 360, 360, 1049, 135, 557, 1049, 665, 665, - 665, 665, 665, 665, 665, 665, 665, 665, 665, 665, - 665, 665, 665, 665, 665, 665, 665, 665, 665, 665, - 665, 665, 665, 665, 665, 665, 665, 1042, 539, 557, - 394, 290, 380, 539, 978, 392, 338, 557, 557, 557, - 557, 557, 557, 557, 557, 557, 557, 557, 557, 557, - 557, 557, 557, 557, 557, 557, 557, 557, 557, 557, - 557, 557, 557, 557, 557, 557, 539, 225, 136, 363, - 136, 363, 225, 363, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 304, 304, 225, 986, 366, 366, 366, - 366, 366, 366, 225, 225, 225, 225, 225, 225, 225, + 568, 568, 568, 568, 568, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 685, 685, 685, 685, 685, 685, 685, 685, 685, 685, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, + 873, 873, 873, 873, 873, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, + 102, 139, 364, 137, 584, 139, 137, 139, 543, 1092, + 645, 306, 53, 297, 20, 310, 684, 217, 432, 297, + 0, 310, 54, 137, 432, 137, 137, 1, 306, 139, + 306, 306, 310, 20, 310, 432, 139, 432, 139, 217, + 139, 297, 137, 89, 89, 560, 560, 306, 117, 117, + 4, 561, 561, 310, 1092, 684, 432, 562, 562, 33, + 33, 14, 563, 563, 137, 564, 564, 53, 72, 306, + 269, 20, 584, 584, 269, 54, 269, 269, 645, 645, + 543, 214, 310, 15, 214, 432, 310, 310, 310, 432, + 432, 432, 107, 269, 566, 566, 69, 69, 89, 560, + 107, 73, 275, 117, 537, 561, 537, 537, 137, 86, + 86, 562, 33, 306, 102, 269, 563, 221, 88, 564, + 221, 72, 269, 537, 1039, 107, 107, 93, 93, 107, + 227, 107, 107, 107, 107, 107, 107, 107, 107, 107, + 107, 107, 107, 107, 249, 537, 364, 364, 566, 69, + 1039, 275, 537, 290, 73, 102, 211, 102, 350, 269, + 211, 137, 86, 386, 139, 107, 306, 102, 1086, 348, + 310, 88, 349, 432, 99, 99, 114, 114, 122, 122, + 93, 390, 19, 227, 16, 391, 107, 107, 348, 537, + 136, 349, 136, 107, 1086, 392, 19, 249, 269, 19, + 22, 22, 386, 19, 19, 226, 290, 226, 17, 121, + 226, 350, 269, 121, 49, 49, 386, 121, 121, 19, + 19, 19, 121, 180, 180, 181, 181, 99, 537, 114, + 394, 122, 235, 235, 390, 404, 107, 19, 391, 121, + 121, 121, 537, 121, 121, 121, 489, 121, 392, 121, + 491, 121, 540, 121, 121, 121, 121, 121, 121, 121, + 121, 121, 121, 121, 121, 121, 544, 121, 121, 121, + 121, 121, 121, 121, 121, 363, 180, 363, 181, 363, + 357, 357, 267, 394, 357, 235, 21, 121, 404, 304, + 304, 267, 380, 380, 549, 267, 399, 399, 213, 489, + 567, 570, 625, 491, 627, 540, 646, 646, 121, 121, + 656, 657, 267, 267, 267, 121, 267, 267, 267, 544, + 913, 935, 267, 941, 267, 943, 267, 267, 267, 267, + 267, 267, 267, 267, 267, 267, 267, 267, 267, 213, + 23, 213, 304, 485, 216, 380, 216, 549, 24, 399, + 979, 213, 987, 567, 570, 625, 25, 627, 135, 646, + 267, 26, 485, 656, 657, 29, 29, 29, 990, 1044, + 1044, 1056, 1065, 913, 935, 1077, 941, 185, 943, 1127, + 27, 267, 267, 135, 135, 77, 77, 135, 267, 135, + 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, + 135, 135, 185, 979, 376, 987, 185, 376, 185, 185, + 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, + 185, 990, 1044, 135, 1056, 1065, 359, 359, 1077, 265, + 359, 265, 1127, 272, 2, 28, 272, 272, 538, 538, + 236, 272, 185, 538, 135, 135, 1129, 30, 2, 370, + 370, 135, 2, 370, 31, 525, 272, 2, 538, 525, + 525, 525, 525, 185, 185, 32, 1129, 1129, 1129, 236, + 185, 236, 236, 236, 236, 236, 236, 236, 236, 236, + 236, 236, 236, 236, 34, 272, 1130, 538, 985, 1145, + 225, 35, 1102, 1102, 1102, 225, 1102, 1102, 36, 985, + 416, 1012, 985, 416, 37, 236, 1130, 1130, 1130, 1145, + 1145, 1145, 1012, 38, 578, 1012, 578, 162, 162, 578, + 578, 578, 578, 578, 578, 578, 236, 236, 225, 539, + 39, 374, 374, 236, 539, 374, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, - 225, 225, 272, 538, 538, 272, 272, 1128, 538, 631, - 272, 631, 2, 339, 1043, 1043, 304, 1043, 265, 986, - 265, 375, 375, 538, 375, 272, 2, 1128, 1128, 1128, - 2, 961, 961, 928, 961, 2, 928, 961, 961, 961, - 961, 961, 961, 1100, 1100, 1100, 1100, 1100, 162, 162, - 1022, 1022, 538, 1022, 272, 340, 1022, 1022, 1022, 1022, - 1022, 1022, 578, 578, 923, 578, 341, 923, 578, 578, - 578, 578, 578, 578, 525, 83, 83, 83, 525, 525, - 525, 525, 970, 361, 343, 361, 970, 970, 970, 970, - 943, 29, 29, 29, 943, 943, 943, 943, 374, 374, - 344, 374, 370, 370, 913, 370, 1067, 913, 909, 1067, - 345, 909, 565, 565, 1074, 565, 901, 1074, 346, 901, - 359, 359, 355, 359, 357, 357, 356, 357, 1082, 1082, - 1082, 1082, 221, 1087, 1091, 221, 1087, 1091, 214, 77, - 77, 214, 1102, 1102, 1102, 1102, 583, 583, 367, 583, - 588, 588, 369, 588, 599, 599, 371, 599, 604, 604, - 659, 604, 416, 659, 630, 416, 630, 365, 216, 365, - 216, 622, 373, 622, 373, 582, 372, 582, 1105, 1105, - 1105, 885, 377, 885, 1112, 1112, 673, 673, 49, 49, - 261, 261, 22, 22, 939, 939, 378, 379, 382, 383, - 384, 388, 389, 393, 395, 396, 397, 398, 400, 401, - 402, 403, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 423, 424, 426, 427, 428, 441, 443, - 444, 445, 446, 447, 448, 449, 450, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 470, 471, 472, 473, 478, 479, - 480, 481, 482, 483, 484, 486, 488, 494, 495, 497, - 498, 499, 506, 507, 508, 510, 513, 514, 515, 516, - 517, 518, 521, 0, 524, 530, 535, 536, 541, 546, - 548, 555, 556, 571, 577, 580, 581, 585, 590, 597, - 612, 613, 616, 617, 624, 626, 628, 629, 650, 651, - 652, 653, 661, 663, 664, 666, 667, 668, 671, 675, - 676, 879, 882, 886, 887, 889, 890, 891, 892, 893, - 894, 895, 896, 897, 898, 899, 900, 904, 905, 910, - 911, 915, 920, 921, 922, 929, 931, 932, 935, 936, - 937, 938, 946, 951, 952, 964, 969, 972, 973, 976, - 990, 991, 996, 997, 1003, 1004, 1007, 1008, 1009, 1012, - 1013, 1016, 1017, 1021, 1025, 1031, 1035, 1036, 1038, 1044, - 1045, 1046, 1048, 1051, 1052, 1056, 1057, 1059, 1060, 1061, - 1066, 1069, 1071, 1072, 1073, 1077, 1078, 1080, 1081, 1083, - 1089, 1093, 1094, 1098, 1099, 1104, 1106, 1107, 1109, 1113, - 1114, 1115, 1116, 1117, 1120, 1121, 1130, 1132, 1133, 1135, - 1136, 1137, 1138, 1140, 1141, 522, 1, 4, 14, 15, - 16, 17, 21, 23, 24, 25, 26, 27, 28, 30, - 31, 32, 34, 35, 36, 37, 38, 39, 43, 44, - 45, 46, 47, 48, 58, 59, 60, 61, 62, 63, - 64, 65, 70, 71, 76, 78, 80, 81, 82, 84, - 87, 92, 94, 97, 100, 101, 103, 104, 105, 108, - 109, 112, 113, 115, 116, 119, 123, 125, 126, 138, - 140, 141, 142, 143, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 163, 164, 165, 166, 167, 169, - 170, 172, 173, 182, 183, 186, 187, 188, 189, 190, - 191, 192, 193, 194, 195, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 210, 218, 219, 220, - 224, 228, 229, 230, 231, 232, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 250, 251, 252, - 253, 255, 256, 257, 258, 260, 262, 266, 270, 271, - 273, 274, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 291, 292, 294, 296, - 299, 301, 302, 303, 307, 311, 312, 313, 314, 315, - 316, 317, 318 ] + 225, 225, 225, 225, 225, 43, 557, 539, 375, 375, + 659, 557, 375, 659, 44, 539, 539, 539, 539, 539, + 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, + 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, + 539, 539, 539, 539, 557, 665, 886, 565, 565, 886, + 665, 565, 557, 557, 557, 557, 557, 557, 557, 557, + 557, 557, 557, 557, 557, 557, 557, 557, 557, 557, + 557, 557, 557, 557, 557, 557, 557, 557, 557, 557, + 557, 944, 361, 665, 361, 944, 944, 944, 944, 215, + 215, 665, 665, 665, 665, 665, 665, 665, 665, 665, + 665, 665, 665, 665, 665, 665, 665, 665, 665, 665, + 665, 665, 665, 665, 665, 665, 665, 665, 665, 665, + 962, 902, 962, 45, 902, 962, 962, 962, 962, 962, + 962, 962, 1024, 909, 1024, 46, 909, 1024, 1024, 1024, + 1024, 1024, 1024, 1024, 971, 83, 83, 83, 971, 971, + 971, 971, 366, 366, 366, 366, 366, 366, 588, 588, + 599, 599, 588, 47, 599, 604, 604, 968, 968, 604, + 48, 968, 1045, 1045, 1084, 1084, 1045, 1084, 1084, 1104, + 1104, 58, 1104, 1104, 583, 583, 910, 583, 914, 910, + 924, 914, 929, 924, 1042, 929, 1051, 1042, 1069, 1051, + 1076, 1069, 1089, 1076, 1093, 1089, 365, 1093, 365, 373, + 582, 373, 582, 622, 623, 622, 623, 630, 631, 630, + 631, 972, 59, 972, 1107, 1107, 1107, 261, 261, 360, + 360, 362, 362, 658, 658, 673, 673, 940, 940, 980, + 980, 1114, 1114, 60, 61, 62, 63, 64, 65, 70, + 71, 76, 78, 80, 81, 82, 84, 87, 92, 94, + 97, 100, 101, 103, 104, 105, 108, 109, 112, 113, + 115, 116, 119, 123, 125, 126, 138, 140, 141, 142, + 143, 145, 146, 147, 148, 149, 150, 151, 152, 153, + 154, 163, 164, 165, 166, 167, 169, 170, 172, 173, + 182, 183, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 195, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 210, 218, 219, 220, 224, 228, 229, + 230, 231, 232, 238, 239, 240, 241, 242, 243, 244, + 245, 246, 247, 248, 250, 251, 252, 253, 255, 256, + 257, 258, 260, 262, 266, 270, 271, 273, 274, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 291, 292, 294, 296, 299, 301, 302, + 303, 307, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, + 339, 340, 341, 343, 344, 345, 346, 355, 356, 367, + 369, 371, 372, 377, 378, 379, 382, 383, 384, 388, + 389, 393, 395, 396, 397, 398, 400, 401, 402, 403, + 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, + 415, 423, 424, 426, 427, 428, 441, 443, 444, 445, + 446, 447, 448, 449, 450, 452, 453, 454, 455, 456, + 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, + 467, 468, 470, 471, 472, 473, 478, 479, 480, 481, + 482, 483, 484, 486, 488, 494, 495, 497, 498, 499, + 506, 507, 508, 510, 513, 514, 515, 516, 517, 518, + 521, 522, 524, 530, 535, 536, 541, 546, 548, 555, + 556, 571, 577, 580, 581, 585, 590, 597, 612, 613, + 616, 617, 624, 626, 628, 629, 650, 651, 652, 653, + 661, 663, 664, 666, 667, 668, 671, 675, 676, 882, + 885, 887, 888, 890, 891, 892, 893, 894, 895, 896, + 897, 898, 899, 900, 901, 905, 906, 911, 912, 916, + 921, 922, 923, 930, 932, 933, 936, 937, 938, 939, + 947, 951, 952, 953, 965, 970, 973, 974, 977, 991, + 992, 997, 998, 1005, 1006, 1009, 1010, 1011, 1014, 1015, + 1018, 1019, 1023, 1027, 1033, 1037, 1038, 1040, 1046, 1047, + 1048, 1050, 1053, 1054, 1058, 1059, 1061, 1062, 1063, 1068, + 1071, 1073, 1074, 1075, 1079, 1080, 1082, 1083, 1085, 1091, + 1095, 1096, 1100, 1101, 1106, 1108, 1109, 1111, 1115, 1116, + 1117, 1118, 1119, 1122, 1123, 1132, 1134, 1135, 1137, 1138, + 1139, 1140, 1142, 1143 ] racc_action_pointer = [ - 1451, 1776, 1360, nil, 1777, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 1596, 1597, 1598, 1599, nil, 1055, - 759, 1763, 1516, 1776, 1602, 1766, 1604, 1605, 1606, 1399, - 1607, 1771, 1609, 729, 1610, 1765, 1783, 1613, 1790, 1615, - nil, nil, nil, 1738, 1617, 1618, 1619, 1785, 1621, 1512, - nil, nil, nil, 632, 767, nil, nil, nil, 1785, 1623, - 1793, 1625, 1644, 1627, 1793, 1629, nil, nil, nil, 900, - 1630, 1796, 751, 896, nil, nil, 1632, 1309, 1633, nil, - 1813, 1635, 1654, 1417, 1637, nil, 757, 1638, 1014, 677, - nil, nil, 1803, 723, 1732, nil, nil, 1641, nil, 818, - 1642, 1811, 728, 1644, 1645, 1646, nil, 803, 1806, 1747, - nil, nil, 1649, 1650, 978, 1651, 1652, 644, nil, 1653, - nil, 913, 707, 1654, nil, 1655, 1710, nil, nil, nil, - nil, nil, nil, nil, nil, 1083, 1243, 722, 1657, 741, - 1658, 1659, 1660, 1661, nil, 1662, 1663, 1664, 1665, 1666, - 1667, 1668, 1669, 1670, 1671, nil, nil, nil, nil, nil, - nil, nil, 1344, 1672, 1673, 1674, 1675, 1676, nil, 1677, - 1678, nil, 1679, 1772, nil, nil, nil, nil, nil, nil, - 753, 897, 1806, 1701, nil, 1064, 1683, 1684, 1685, 1686, - 1687, 1688, 1689, 1690, 1818, 1692, nil, 1693, 1694, 1695, - 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1831, nil, nil, - 1721, 911, nil, 783, 1319, 756, 1483, 773, 1705, 1706, - 1707, 1319, nil, nil, 1708, 1189, 956, 736, 1709, 1710, - 1711, 1712, 1713, nil, nil, 960, 1001, nil, 1837, 1838, - 1734, 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 755, - 1743, 1744, 1727, 1728, nil, 1747, 1748, 1749, 1750, nil, - 1897, 1456, 1734, nil, nil, 1333, 1735, 986, nil, 713, - 1829, 1830, 1315, 1871, 1872, 790, 1869, 1741, 1835, 1855, - 1856, 1890, 1891, 1892, 1893, 1894, 1895, 1896, 1897, 1931, - 1062, 1754, 1755, nil, 1756, nil, 1757, 1012, nil, 1936, - nil, 1759, 1906, 1905, 1187, nil, 727, 1762, nil, nil, - 732, 1763, 1764, 1765, 1766, 1767, 1768, 1769, 1770, 578, - 585, 621, 639, 709, 729, 734, 759, 772, 776, 817, - 863, 901, 918, 927, 978, 983, 988, 1012, 1064, 1181, - 1223, 1234, nil, 1252, 1268, 1278, 1385, nil, 879, 871, - 773, nil, nil, nil, nil, 1290, 1294, 1300, nil, 1296, - 1028, 1265, 916, 1169, 713, 1349, 1288, 1402, nil, 1337, - 1278, 1342, 1362, 1354, 1274, 1197, 888, 1350, 1364, 1365, - 1063, nil, 1510, 1367, 1368, nil, 977, nil, 1369, 1370, - 905, 915, 1066, 1371, 1061, 1372, 1373, 1374, 1375, 987, - 1376, 1377, 1378, 1397, 791, 1380, 1381, 1382, 1383, 1384, - 1385, 1386, 1387, 1388, 1389, 1390, 1349, nil, nil, nil, - nil, nil, nil, 1534, 1392, nil, 1393, 1394, 1411, nil, + 578, 767, 1172, nil, 790, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 619, 641, 742, 766, nil, 917, + 751, 1007, 914, 1073, 906, 1077, 919, 938, 993, 1063, + 1005, 1175, 1023, 673, 1042, 1203, 1227, 1062, 1247, 1088, + nil, nil, nil, 1245, 1132, 1241, 1253, 1446, 1288, 928, + nil, nil, nil, 625, 636, nil, nil, nil, 1462, 1340, + 1530, 1362, 1381, 1364, 1530, 1366, nil, nil, nil, 710, + 1367, 1533, 682, 715, nil, nil, 1369, 945, 1370, nil, + 1550, 1372, 1391, 1437, 1374, nil, 723, 1375, 732, 675, + nil, nil, 1540, 741, 1469, nil, nil, 1378, nil, 788, + 1379, 1548, 728, 1381, 1382, 1383, nil, 811, 1543, 1484, + nil, nil, 1386, 1387, 790, 1388, 1389, 680, nil, 1390, + nil, 933, 792, 1391, nil, 1392, 1447, nil, nil, nil, + nil, nil, nil, nil, nil, 1069, 895, 722, 1394, 741, + 1395, 1396, 1397, 1398, nil, 1399, 1400, 1401, 1402, 1403, + 1404, 1405, 1406, 1407, 1408, nil, nil, nil, nil, nil, + nil, nil, 1203, 1409, 1410, 1411, 1412, 1413, nil, 1414, + 1415, nil, 1416, 1509, nil, nil, nil, nil, nil, nil, + 837, 839, 1543, 1438, nil, 1088, 1420, 1421, 1422, 1423, + 1424, 1425, 1426, 1427, 1555, 1429, nil, 1430, 1431, 1432, + 1433, 1434, 1435, 1436, 1437, 1438, 1439, 1568, nil, nil, + 1458, 885, nil, 912, 653, 1219, 1049, 751, 1442, 1443, + 1444, 694, nil, nil, 1445, 1142, 905, 744, 1446, 1447, + 1448, 1449, 1450, nil, nil, 846, 1151, nil, 1574, 1575, + 1471, 1472, 1473, 1474, 1475, 1476, 1477, 1478, 1479, 758, + 1480, 1481, 1464, 1465, nil, 1484, 1485, 1486, 1487, nil, + 1634, 1443, 1471, nil, nil, 1134, 1472, 1006, nil, 773, + 1566, 1567, 1136, 1608, 1609, 838, 1606, 1478, 1572, 1592, + 1593, 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1668, + 767, 1491, 1492, nil, 1493, nil, 1494, 753, nil, 1673, + nil, 1496, 1643, 1642, 903, nil, 727, 1499, nil, nil, + 732, 1500, 1501, 1502, 1503, 1504, 1505, 1506, 1507, 1508, + 1509, 1510, 1511, 1512, 1513, 1514, 1515, 1516, 1517, 1518, + 1519, 1520, 1521, 1522, 1523, 1524, 1525, 1526, 1527, 1528, + 1529, 1530, nil, 1531, 1532, 1533, 1633, nil, 868, 871, + 772, nil, nil, nil, nil, 1535, 1536, 847, nil, 993, + 1356, 1215, 1358, 905, 713, 1339, 1423, 1623, nil, 1555, + 1016, 1557, 1558, 1342, 1098, 1135, 1018, 1541, 1542, 1543, + 906, nil, 1688, 1545, 1546, nil, 777, nil, 1547, 1548, + 795, 799, 809, 1549, 844, 1550, 1551, 1552, 1553, 910, + 1554, 1555, 1556, 1575, 849, 1558, 1559, 1560, 1561, 1562, + 1563, 1564, 1565, 1566, 1567, 1568, 1077, nil, nil, nil, + nil, nil, nil, 1712, 1570, nil, 1571, 1572, 1589, nil, nil, nil, 735, nil, nil, nil, nil, nil, nil, nil, - nil, 1396, nil, 1397, 1398, 1399, 1400, 1401, 1402, 1403, - 1404, nil, 1405, 1423, 1424, 1425, 1426, 1427, 1428, 1429, - 1430, 1431, 1432, 1433, 1434, 1435, 1436, 1437, 1438, nil, - 1439, 1440, 1441, 1442, nil, nil, nil, nil, 1515, 1516, - 1517, 1518, 1447, 1448, 1573, 751, 1574, nil, 1451, 993, - nil, 994, nil, nil, 1453, 1454, nil, 1437, 1438, 1439, - nil, nil, nil, nil, nil, nil, 1440, 1441, 1442, nil, - 1443, nil, nil, 1444, 1445, 1446, 1447, 1448, 1449, nil, - nil, 1450, 1611, nil, 1508, 1298, nil, nil, nil, nil, - 1453, nil, nil, nil, nil, 1471, 1455, 756, 1313, 1150, - 995, 1473, nil, 732, 917, nil, 1598, nil, 1599, 697, - nil, nil, nil, nil, nil, 1587, 1516, 1113, nil, nil, - 658, 663, 665, 680, 710, 1288, 721, 829, 553, nil, - 821, 1461, nil, nil, nil, nil, nil, 1466, 1245, nil, - 1604, 1605, 1357, 1467, 715, 1540, nil, nil, 1326, nil, - 1557, nil, nil, nil, nil, nil, nil, 1558, nil, 1330, - nil, nil, nil, nil, 1334, nil, nil, nil, nil, nil, - nil, nil, 1557, 1558, nil, nil, 1598, 1471, nil, nil, - nil, nil, 1353, 640, 1472, 769, 1473, 672, 1573, 1574, - 1346, 1191, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 720, 980, nil, nil, nil, - 1476, 1477, 1478, 1479, nil, nil, 824, 777, 908, 1347, - nil, 1625, nil, 1481, 1482, 1074, 1483, 1484, 1504, nil, - nil, 1486, nil, 1424, nil, 1487, 1507, nil, nil, nil, - nil, nil, nil, nil, 761, 368, nil, nil, nil, nil, + nil, 1574, nil, 1575, 1576, 1577, 1578, 1579, 1580, 1581, + 1582, nil, 1583, 1601, 1602, 1603, 1604, 1605, 1606, 1607, + 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1615, 1616, nil, + 1617, 1618, 1619, 1620, nil, nil, nil, nil, 1693, 1694, + 1695, 1696, 1625, 1626, 1751, 1042, 1752, nil, 1629, 860, + nil, 864, nil, nil, 1631, 1632, nil, 1615, 1616, 1617, + nil, nil, nil, nil, nil, nil, 1618, 1619, 1620, nil, + 1621, nil, nil, 1622, 1623, 1624, 1625, 1626, 1627, nil, + nil, 1628, 1647, nil, 1686, 1069, nil, nil, nil, nil, + 1631, nil, nil, nil, nil, 1649, 1633, 803, 1138, 1181, + 866, 1651, nil, 732, 880, nil, 1776, nil, 1777, 908, + nil, nil, nil, nil, nil, 1765, 1694, 1218, nil, nil, + 660, 666, 672, 677, 680, 1174, 709, 914, -2, nil, + 915, 1639, nil, nil, nil, nil, nil, 1644, 1087, nil, + 1782, 1783, 1343, 1455, 715, 1718, nil, nil, 1285, nil, + 1735, nil, nil, nil, nil, nil, nil, 1736, nil, 1287, + nil, nil, nil, nil, 1292, nil, nil, nil, nil, nil, + nil, nil, 1735, 1736, nil, nil, 1776, 1649, nil, nil, + nil, nil, 1346, 1347, 1650, 916, 1651, 918, 1751, 1752, + 1350, 1351, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 721, 920, nil, nil, nil, + 1654, 1655, 1656, 1657, nil, nil, 924, 925, 1421, 1147, + nil, 1803, nil, 1659, 1660, 1257, 1661, 1662, 1682, nil, + nil, 1664, nil, 1423, nil, 1665, 1685, nil, nil, nil, + nil, nil, nil, nil, 632, 183, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, @@ -560,425 +560,449 @@ def parse(input) nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, -2, nil, nil, nil, nil, nil, 1489, - nil, nil, 1490, nil, nil, 1356, 1491, 1492, nil, 1493, - 1494, 1495, 1496, 1497, 1498, 1499, 1516, 1591, 1502, 1593, - 1523, 1303, nil, nil, 1632, 1506, nil, nil, 850, 1295, - 1606, 1607, 840, 1291, nil, 1526, nil, nil, nil, nil, - 1510, 1511, 1512, 1251, nil, nil, nil, nil, 1220, 1532, - nil, 1514, 1515, nil, 726, 1532, 1517, 1671, 1672, 1432, - 984, nil, 985, 1314, nil, nil, 1520, nil, 183, nil, - nil, 1521, 1522, nil, nil, nil, nil, nil, nil, nil, - nil, 1214, nil, nil, 1523, nil, nil, 994, nil, 1524, - 1306, 1008, 1653, 1654, nil, nil, 1626, nil, 1065, 900, - nil, nil, nil, nil, 1006, nil, 1190, nil, nil, 860, - 1528, 1529, nil, nil, nil, nil, 1657, 1548, nil, nil, - nil, nil, nil, 1548, 1589, nil, nil, 1661, 1662, 1619, - 923, nil, 1537, 1538, nil, nil, 1539, 1540, nil, nil, - nil, 1606, 1233, nil, nil, 1687, nil, nil, nil, nil, - nil, 1543, nil, nil, nil, 1562, 1640, 827, 1546, nil, - 922, nil, 1058, 1190, 1547, 1565, 1549, nil, 1638, 1086, - nil, 1696, 1569, nil, 715, nil, 1612, 1614, nil, 1679, - 1556, 1557, nil, 846, nil, nil, 1558, 1293, nil, 1559, - nil, 1682, 1624, 1579, 1301, 831, nil, 1622, 1582, nil, - 1632, 1566, 1304, 1649, 818, nil, nil, 1357, nil, 1634, - 695, 1321, nil, 1661, 1570, nil, nil, nil, 1683, 1572, - 1220, nil, 1318, nil, 1573, 1427, 1574, 1684, nil, 1592, - nil, nil, 1428, 1577, 1578, 1579, 1598, 1581, nil, nil, - 1582, 1583, nil, nil, nil, 764, nil, 1087, 1269, nil, - 1676, nil, 1585, 1586, nil, 1587, 1592, 1660, 1665, nil, - 1591, 1592, nil, 1073, nil ] + nil, nil, nil, 368, nil, nil, nil, nil, nil, nil, + nil, nil, 1667, nil, nil, 1668, 1172, 1669, 1670, nil, + 1671, 1672, 1673, 1674, 1675, 1676, 1677, 1694, 1769, 1680, + 1771, 1701, 1258, nil, nil, 1810, 1684, nil, nil, 1270, + 1323, 1784, 1785, 934, 1325, nil, 1704, nil, nil, nil, + nil, 1688, 1689, 1690, 1327, nil, nil, nil, nil, 1329, + 1710, nil, 1692, 1693, nil, 935, 1710, 1695, 1849, 1850, + 1425, 937, nil, 939, 1255, nil, nil, 1698, nil, 553, + nil, 1716, 1700, 1701, nil, nil, nil, nil, nil, nil, + nil, nil, 1253, nil, nil, 1702, nil, nil, 1294, nil, + 1703, 1318, 1354, 1832, 1833, nil, nil, 1805, nil, 964, + 1435, nil, nil, nil, nil, 1156, nil, 966, nil, nil, + 982, 1707, 1708, nil, nil, nil, nil, 1836, 1727, nil, + nil, nil, nil, nil, nil, 1727, 1768, nil, nil, 1840, + 1841, 1798, 1169, nil, 1716, 1717, nil, nil, 1718, 1719, + nil, nil, nil, 1785, 1265, nil, nil, 1866, nil, nil, + nil, nil, nil, 1722, nil, nil, nil, 1741, 1819, 768, + 1725, nil, 1331, nil, 983, 1299, 1726, 1744, 1728, nil, + 1817, 1378, nil, 1875, 1748, nil, 985, nil, 1791, 1793, + nil, 1858, 1735, 1736, nil, 986, nil, nil, 1737, 1335, + nil, 1738, nil, 1861, 1803, 1758, 1337, 989, nil, 1801, + 1761, nil, 1811, 1745, 1301, 1828, 812, nil, nil, 1376, + nil, 1813, 629, 1341, nil, 1840, 1749, nil, nil, nil, + 1862, 1751, 1060, nil, 1306, nil, 1752, 1423, 1753, 1863, + nil, 1771, nil, nil, 1435, 1756, 1757, 1758, 1777, 1760, + nil, nil, 1761, 1762, nil, nil, nil, 993, nil, 1098, + 1138, nil, 1855, nil, 1764, 1765, nil, 1766, 1771, 1839, + 1844, nil, 1770, 1771, nil, 1141, nil ] racc_action_default = [ - -595, -595, -595, -407, -595, -1, -2, -3, -4, -5, - -6, -7, -8, -9, -595, -595, -595, -595, 1145, -13, - -39, -41, -50, -15, -595, -595, -595, -595, -595, -166, - -595, -595, -595, -595, -595, -53, -19, -595, -595, -595, - -40, -51, -52, -595, -595, -595, -595, -26, -595, -50, - -31, -323, -324, -595, -595, -402, -404, -42, -595, -595, - -22, -595, -595, -595, -43, -595, -167, -168, -169, -595, - -595, -26, -595, -595, -406, -326, -595, -595, -595, -54, - -595, -595, -595, -595, -595, -14, -595, -595, -595, -28, - -300, -315, -595, -595, -595, -319, -325, -595, -405, -595, - -595, -595, -595, -595, -595, -595, -377, -64, -595, -143, - -25, -29, -595, -595, -595, -595, -595, -28, -284, -595, - -403, -55, -595, -595, -20, -595, -327, -329, -330, -388, - -388, -16, -17, -18, -32, -64, -66, -132, -595, -372, - -595, -595, -595, -595, -98, -595, -595, -595, -595, -595, - -595, -595, -595, -595, -595, -109, -110, -111, -112, -113, - -114, -115, -595, -595, -595, -595, -595, -595, -308, -595, - -595, -144, -595, -595, -219, -220, -301, -374, -27, -30, - -595, -595, -92, -56, -57, -76, -595, -595, -595, -595, - -595, -595, -595, -595, -98, -595, -117, -595, -595, -595, - -595, -595, -595, -595, -595, -595, -595, -595, -290, -298, - -11, -595, -21, -595, -595, -595, -66, -279, -595, -595, - -595, -595, -45, -46, -595, -595, -595, -141, -595, -595, - -595, -595, -595, -306, -322, -595, -245, -373, -595, -595, - -375, -375, -375, -375, -375, -375, -375, -375, -375, -595, - -375, -375, -595, -595, -246, -375, -375, -375, -375, -378, - -595, -595, -595, -285, -172, -66, -595, -245, -299, -132, - -152, -152, -152, -595, -595, -224, -595, -595, -152, -595, - -595, -595, -595, -595, -595, -595, -595, -595, -595, -595, - -595, -595, -595, -328, -595, -389, -595, -279, -35, -227, - -280, -595, -595, -595, -595, -38, -132, -595, -47, -48, - -155, -595, -595, -595, -595, -595, -595, -595, -595, -595, - -595, -595, -595, -595, -595, -595, -595, -595, -595, -595, - -595, -595, -595, -595, -595, -595, -595, -595, -595, -595, - -595, -595, -370, -595, -595, -595, -143, -142, -137, -137, - -133, -139, -140, -37, -309, -595, -595, -595, -376, -595, - -595, -595, -595, -595, -595, -595, -595, -241, -320, -595, - -595, -375, -375, -595, -595, -595, -595, -595, -595, -595, - -595, -49, -595, -595, -595, -291, -595, -79, -595, -595, - -595, -595, -595, -595, -595, -595, -595, -595, -595, -595, - -595, -595, -595, -375, -595, -595, -595, -595, -595, -595, - -595, -595, -595, -595, -595, -595, -595, -282, -23, -24, - -386, -387, -34, -595, -595, -281, -595, -595, -595, -307, + -597, -597, -597, -409, -597, -1, -2, -3, -4, -5, + -6, -7, -8, -9, -597, -597, -597, -597, 1147, -13, + -39, -41, -50, -15, -597, -597, -597, -597, -597, -166, + -597, -597, -597, -597, -597, -53, -19, -597, -597, -597, + -40, -51, -52, -597, -597, -597, -597, -26, -597, -50, + -31, -323, -324, -597, -597, -404, -406, -42, -597, -597, + -22, -597, -597, -597, -43, -597, -167, -168, -169, -597, + -597, -26, -597, -597, -408, -326, -597, -597, -597, -54, + -597, -597, -597, -597, -597, -14, -597, -597, -597, -28, + -300, -315, -597, -597, -597, -319, -325, -597, -407, -597, + -597, -597, -597, -597, -597, -597, -377, -64, -597, -143, + -25, -29, -597, -597, -597, -597, -597, -28, -284, -597, + -405, -55, -597, -597, -20, -597, -327, -329, -330, -388, + -388, -16, -17, -18, -32, -64, -66, -132, -597, -372, + -597, -597, -597, -597, -98, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -109, -110, -111, -112, -113, + -114, -115, -597, -597, -597, -597, -597, -597, -308, -597, + -597, -144, -597, -597, -219, -220, -301, -374, -27, -30, + -597, -597, -92, -56, -57, -76, -597, -597, -597, -597, + -597, -597, -597, -597, -98, -597, -117, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -290, -298, + -11, -597, -21, -597, -597, -597, -66, -279, -597, -597, + -597, -597, -45, -46, -597, -597, -597, -141, -597, -597, + -597, -597, -597, -306, -322, -597, -245, -373, -597, -597, + -375, -375, -375, -375, -375, -375, -375, -375, -375, -597, + -375, -375, -597, -597, -246, -375, -375, -375, -375, -378, + -597, -597, -597, -285, -172, -66, -597, -245, -299, -132, + -152, -152, -152, -597, -597, -224, -597, -597, -152, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -328, -597, -389, -597, -279, -35, -227, + -280, -597, -597, -597, -597, -38, -132, -597, -47, -48, + -155, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -370, -597, -597, -597, -143, -142, -137, -137, + -133, -139, -140, -37, -309, -597, -597, -597, -376, -597, + -597, -597, -597, -597, -597, -597, -597, -241, -320, -597, + -597, -375, -375, -597, -597, -597, -597, -597, -597, -597, + -597, -49, -597, -597, -597, -291, -597, -79, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -375, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -282, -23, -24, + -386, -387, -34, -597, -597, -281, -597, -597, -597, -307, -379, -154, -156, -157, -158, -159, -160, -161, -162, -163, - -164, -595, -192, -595, -595, -595, -595, -595, -595, -595, - -595, -312, -595, -179, -179, -179, -179, -179, -179, -179, + -164, -597, -192, -597, -597, -597, -597, -597, -597, -597, + -597, -312, -597, -179, -179, -179, -179, -179, -179, -179, -181, -181, -173, -173, -173, -179, -179, -179, -179, -355, - -179, -179, -179, -595, -360, -361, -362, -363, -189, -189, - -189, -189, -595, -595, -595, -137, -595, -71, -595, -141, - -138, -141, -134, -380, -375, -375, -96, -595, -595, -595, - -400, -97, -99, -100, -101, -102, -595, -595, -595, -103, - -595, -237, -104, -595, -595, -595, -595, -595, -595, -105, - -106, -595, -375, -108, -595, -595, -249, -250, -251, -257, - -595, -333, -44, -145, -146, -595, -595, -132, -152, -595, - -595, -595, -153, -595, -595, -82, -595, -89, -595, -595, - -84, -85, -86, -225, -226, -595, -595, -595, -120, -121, - -595, -595, -595, -595, -595, -595, -595, -275, -595, -12, - -595, -595, -228, -67, -68, -36, -313, -595, -595, -194, - -195, -197, -595, -595, -595, -595, -401, -180, -595, -339, - -185, -340, -341, -342, -343, -344, -345, -185, -182, -595, - -346, -347, -174, -175, -595, -348, -349, -350, -351, -352, - -353, -354, -189, -189, -358, -359, -229, -595, -364, -365, - -366, -367, -595, -595, -595, -141, -595, -595, -143, -143, - -595, -595, -393, -394, -399, -238, -239, -240, -236, -58, - -59, -60, -61, -62, -63, -595, -595, -116, -321, -135, - -595, -595, -595, -595, -338, -332, -595, -595, -233, -595, - -288, -595, -80, -595, -595, -595, -595, -595, -123, -292, - -316, -595, -88, -233, -124, -595, -278, -125, -126, -127, - -128, -129, -130, -131, -595, -10, -408, -410, -411, -412, - -413, -414, -415, -416, -417, -418, -419, -420, -421, -422, - -423, -424, -425, -426, -427, -428, -429, -430, -431, -432, - -433, -434, -435, -436, -437, -438, -439, -440, -441, -442, - -443, -444, -445, -446, -447, -448, -449, -450, -451, -452, - -453, -454, -455, -456, -457, -458, -459, -460, -461, -462, - -463, -464, -465, -466, -467, -468, -469, -470, -471, -472, - -473, -474, -475, -476, -477, -478, -479, -480, -481, -482, - -483, -484, -485, -486, -487, -488, -489, -490, -491, -492, - -493, -494, -495, -496, -497, -498, -499, -500, -501, -502, - -503, -504, -505, -506, -507, -508, -509, -510, -511, -512, - -513, -514, -515, -516, -517, -518, -519, -520, -521, -522, - -523, -524, -525, -526, -527, -528, -529, -530, -531, -532, - -533, -534, -535, -536, -537, -538, -539, -540, -541, -542, - -543, -544, -545, -546, -547, -548, -549, -550, -551, -552, - -553, -554, -555, -556, -557, -558, -559, -560, -561, -562, - -563, -564, -565, -566, -567, -568, -569, -570, -571, -572, - -573, -574, -575, -576, -577, -578, -579, -580, -581, -582, - -583, -584, -585, -586, -587, -588, -589, -590, -591, -592, - -593, -594, -283, -595, -191, -193, -382, -383, -384, -595, - -390, -391, -595, -395, -396, -595, -595, -595, -199, -595, - -595, -595, -595, -595, -595, -595, -595, -187, -595, -187, - -595, -595, -356, -357, -231, -595, -190, -310, -595, -595, - -143, -143, -141, -595, -286, -179, -73, -74, -94, -95, - -595, -595, -595, -595, -334, -335, -336, -337, -595, -93, - -77, -595, -595, -78, -595, -595, -595, -595, -595, -233, - -595, -91, -595, -595, -90, -277, -595, -409, -69, -385, - -392, -595, -595, -196, -198, -200, -201, -202, -203, -204, - -205, -595, -183, -176, -595, -186, -177, -595, -178, -595, - -595, -595, -229, -229, -70, -72, -143, -302, -595, -211, - -242, -243, -244, -107, -170, -234, -595, -289, -122, -595, - -595, -595, -81, -83, -331, -293, -231, -595, -397, -398, - -218, -381, -188, -595, -595, -230, -311, -231, -231, -595, - -136, -287, -595, -595, -314, -147, -595, -595, -165, -171, - -235, -253, -595, -151, -87, -595, -184, -232, -368, -369, - -75, -595, -303, -212, -213, -375, -595, -258, -595, -150, - -595, -296, -595, -595, -595, -273, -595, -260, -247, -595, - -276, -595, -595, -148, -595, -252, -595, -595, -248, -261, - -595, -595, -297, -595, -149, -318, -595, -595, -294, -595, - -262, -263, -595, -595, -595, -595, -274, -595, -375, -264, - -265, -595, -595, -207, -258, -317, -295, -595, -266, -267, - -595, -595, -304, -214, -595, -271, -259, -268, -269, -595, - -595, -256, -595, -206, -595, -595, -595, -118, -254, -595, - -371, -305, -595, -595, -595, -595, -375, -595, -272, -255, - -595, -595, -208, -209, -210, -595, -119, -595, -595, -270, - -215, -221, -595, -595, -217, -595, -595, -595, -595, -222, - -595, -595, -223, -595, -216 ] + -179, -179, -179, -597, -360, -361, -362, -363, -189, -189, + -189, -189, -597, -597, -597, -137, -597, -71, -597, -141, + -138, -141, -134, -380, -375, -375, -96, -597, -597, -597, + -402, -97, -99, -100, -101, -102, -597, -597, -597, -103, + -597, -237, -104, -597, -597, -597, -597, -597, -597, -105, + -106, -597, -375, -108, -597, -597, -249, -250, -251, -257, + -597, -333, -44, -145, -146, -597, -597, -132, -152, -597, + -597, -597, -153, -597, -597, -82, -597, -89, -597, -597, + -84, -85, -86, -225, -226, -597, -597, -597, -120, -121, + -597, -597, -597, -597, -597, -597, -597, -275, -597, -12, + -597, -597, -228, -67, -68, -36, -313, -597, -597, -194, + -195, -197, -597, -597, -597, -597, -403, -180, -597, -339, + -185, -340, -341, -342, -343, -344, -345, -185, -182, -597, + -346, -347, -174, -175, -597, -348, -349, -350, -351, -352, + -353, -354, -189, -189, -358, -359, -229, -597, -364, -365, + -366, -367, -597, -597, -597, -141, -597, -597, -143, -143, + -597, -597, -393, -394, -401, -238, -239, -240, -236, -58, + -59, -60, -61, -62, -63, -597, -597, -116, -321, -135, + -597, -597, -597, -597, -338, -332, -597, -597, -233, -597, + -288, -597, -80, -597, -597, -597, -597, -597, -123, -292, + -316, -597, -88, -233, -124, -597, -278, -125, -126, -127, + -128, -129, -130, -131, -597, -10, -410, -412, -413, -414, + -415, -416, -417, -418, -419, -420, -421, -422, -423, -424, + -425, -426, -427, -428, -429, -430, -431, -432, -433, -434, + -435, -436, -437, -438, -439, -440, -441, -442, -443, -444, + -445, -446, -447, -448, -449, -450, -451, -452, -453, -454, + -455, -456, -457, -458, -459, -460, -461, -462, -463, -464, + -465, -466, -467, -468, -469, -470, -471, -472, -473, -474, + -475, -476, -477, -478, -479, -480, -481, -482, -483, -484, + -485, -486, -487, -488, -489, -490, -491, -492, -493, -494, + -495, -496, -497, -498, -499, -500, -501, -502, -503, -504, + -505, -506, -507, -508, -509, -510, -511, -512, -513, -514, + -515, -516, -517, -518, -519, -520, -521, -522, -523, -524, + -525, -526, -527, -528, -529, -530, -531, -532, -533, -534, + -535, -536, -537, -538, -539, -540, -541, -542, -543, -544, + -545, -546, -547, -548, -549, -550, -551, -552, -553, -554, + -555, -556, -557, -558, -559, -560, -561, -562, -563, -564, + -565, -566, -567, -568, -569, -570, -571, -572, -573, -574, + -575, -576, -577, -578, -579, -580, -581, -582, -583, -584, + -585, -586, -587, -588, -589, -590, -591, -592, -593, -594, + -595, -596, -283, -597, -191, -193, -382, -383, -384, -385, + -390, -391, -597, -395, -396, -597, -597, -597, -597, -199, + -597, -597, -597, -597, -597, -597, -597, -597, -187, -597, + -187, -597, -597, -356, -357, -231, -597, -190, -310, -597, + -597, -143, -143, -141, -597, -286, -179, -73, -74, -94, + -95, -597, -597, -597, -597, -334, -335, -336, -337, -597, + -93, -77, -597, -597, -78, -597, -597, -597, -597, -597, + -233, -597, -91, -597, -597, -90, -277, -597, -411, -69, + -392, -179, -597, -597, -196, -198, -200, -201, -202, -203, + -204, -205, -597, -183, -176, -597, -186, -177, -597, -178, + -597, -597, -597, -229, -229, -70, -72, -143, -302, -597, + -211, -242, -243, -244, -107, -170, -234, -597, -289, -122, + -597, -597, -597, -81, -83, -331, -293, -231, -597, -398, + -399, -400, -218, -381, -188, -597, -597, -230, -311, -231, + -231, -597, -136, -287, -597, -597, -314, -147, -597, -597, + -165, -171, -235, -253, -597, -151, -87, -597, -184, -232, + -368, -369, -75, -597, -303, -212, -213, -375, -597, -258, + -597, -150, -597, -296, -597, -597, -597, -273, -597, -260, + -247, -597, -276, -597, -597, -148, -597, -252, -597, -597, + -248, -261, -597, -597, -297, -597, -149, -318, -597, -597, + -294, -597, -262, -263, -597, -597, -597, -597, -274, -597, + -375, -264, -265, -597, -597, -207, -258, -317, -295, -597, + -266, -267, -597, -597, -304, -214, -597, -271, -259, -268, + -269, -597, -597, -256, -597, -206, -597, -597, -597, -118, + -254, -597, -371, -305, -597, -597, -597, -597, -375, -597, + -272, -255, -597, -597, -208, -209, -210, -597, -119, -597, + -597, -270, -215, -221, -597, -597, -217, -597, -597, -597, + -597, -222, -597, -597, -223, -597, -216 ] racc_goto_table = [ - 2, 529, 367, 589, 442, 487, 346, 387, 416, 904, - 647, 649, 194, 947, 19, 20, 21, 22, 913, 117, - 612, 613, 614, 660, 38, 94, 40, 41, 42, 208, - 47, 431, 49, 52, 57, 309, 1047, 62, 233, 64, - 298, 109, 672, 995, 66, 67, 68, 928, 71, 685, - 618, 619, 620, 621, 75, 451, 90, 489, 491, 79, - 126, 82, 963, 85, 966, 88, 196, 1000, 935, 52, - 92, 207, 95, 96, 390, 391, 392, 930, 99, 217, - 1045, 101, 404, 1047, 106, 394, 52, 108, 95, 114, - 1021, 50, 944, 52, 69, 305, 111, 120, 432, 52, - 122, 176, 128, 131, 132, 133, 110, 137, 136, 210, - 1068, 127, 174, 175, 52, 177, 178, 180, 93, 181, - 422, 43, 52, 211, 111, 212, 442, 1095, 1039, 1015, - 196, 1086, 600, 601, 179, 207, 216, 1018, 235, 237, + 2, 367, 442, 529, 487, 117, 346, 591, 592, 593, + 594, 595, 596, 649, 19, 20, 21, 22, 608, 609, + 610, 611, 660, 647, 38, 416, 40, 41, 42, 914, + 47, 94, 49, 52, 57, 387, 948, 62, 309, 64, + 233, 685, 489, 491, 66, 67, 68, 109, 71, 589, + 208, 451, 298, 1017, 75, 672, 305, 126, 929, 79, + 931, 82, 936, 85, 905, 88, 612, 613, 614, 52, + 92, 194, 95, 96, 1002, 945, 29, 668, 99, 35, + 1017, 101, 394, 1049, 106, 69, 52, 108, 95, 114, + 996, 50, 110, 52, 1021, 684, 196, 120, 207, 52, + 122, 127, 128, 131, 132, 133, 72, 137, 1047, 93, + 1070, 898, 174, 175, 52, 177, 178, 180, 900, 181, + 179, 1034, 52, 211, 442, 212, 618, 619, 620, 621, + 1049, 1088, 422, 111, 1, 217, 1041, 1023, 235, 237, 238, 239, 240, 241, 107, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 1015, 83, 121, 194, 297, - 668, 490, 490, 254, 255, 256, 257, 258, 11, 259, - 260, 293, 261, 908, 909, 385, 102, 576, 684, 10, - 52, 52, 968, 267, 902, 903, 269, 270, 271, 272, - 273, 274, 275, 276, 625, 278, 1092, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 429, 381, 9, - 290, 1019, 196, 128, 91, 8, 1111, 207, 302, 303, - 304, 306, 127, 875, 308, 342, 1093, 95, 348, 349, - 350, 351, 352, 29, 1103, 52, 35, 1032, 263, 264, - 357, 359, 360, 361, 362, 363, 364, 365, 366, 368, - 369, 370, 371, 372, 897, 373, 374, 375, 376, 91, - 1014, 899, 380, 72, 1130, 1134, 382, 91, 628, 1059, - 629, 874, 214, 215, 1024, 387, 947, 403, 1037, 502, - 1144, 504, 1055, 511, 1109, 1028, 1029, 916, 917, 1091, - 569, 418, 419, 353, 420, 7, 421, 1071, 490, 598, - 598, 425, 575, 1080, 52, 25, 31, 430, 605, 606, - 607, 453, 454, 455, 456, 457, 458, 459, 460, 461, + 247, 248, 249, 250, 251, 1097, 5, 121, 490, 490, + 196, 111, 207, 254, 255, 256, 257, 258, 293, 259, + 260, 6, 261, 576, 390, 391, 392, 25, 31, 625, + 52, 52, 404, 267, 969, 7, 269, 270, 271, 272, + 273, 274, 275, 276, 136, 278, 385, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 598, 598, 429, + 290, 8, 127, 128, 90, 297, 83, 194, 302, 303, + 304, 306, 216, 1094, 308, 9, 91, 95, 348, 349, + 350, 351, 352, 600, 601, 52, 102, 10, 263, 264, + 1132, 1136, 196, 1113, 207, 11, 602, 602, 602, 368, + 12, 569, 371, 372, 909, 910, 1146, 615, 13, 176, + 903, 904, 380, 575, 381, 23, 382, 210, 628, 874, + 629, 91, 36, 964, 342, 967, 1026, 403, 502, 91, + 504, 60, 511, 605, 606, 607, 917, 918, 1030, 1031, + 80, 418, 419, 353, 420, 490, 421, 214, 215, 289, + 948, 425, 124, 387, 52, 89, 33, 430, 86, 134, + 135, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 482, 483, 392, 484, 485, 486, 496, 547, 501, 658, - 493, 394, 1089, 1098, 948, 494, 495, 1107, 992, 523, - 1084, 1067, 428, 527, 528, 1007, 1008, 673, 1040, 522, - 503, 524, 525, 1011, 512, 929, 531, 532, 533, 534, - 52, 236, 526, 537, 538, 6, 540, 5, 541, 542, - 1110, 77, 135, 546, 95, 548, 549, 550, 551, 52, - 553, 554, 555, 556, 911, 558, 559, 560, 561, 562, - 563, 564, 565, 566, 567, 568, 570, 987, 1, 602, - 602, 602, 221, 134, 572, 86, 573, 574, 33, 996, - 615, 58, 1041, 674, 677, 678, 679, 680, 535, 682, - 182, 577, 265, 578, 579, 580, 581, 582, 583, 584, - 585, 417, 586, 183, 1074, 184, 1005, 552, 1062, 519, - 599, 599, 604, 604, 604, 979, 591, 592, 593, 594, - 595, 596, 423, 89, 1030, 939, 124, 608, 609, 610, - 611, 659, 622, 623, 662, 993, 399, 289, 627, 95, - 1027, 95, 80, 1070, 630, 631, 60, 632, 633, 634, - 1079, 36, 505, 509, 23, 520, 635, 636, 637, 1058, - 638, 1088, 1097, 639, 640, 641, 642, 643, 644, 354, - 268, 645, 646, 1118, 648, 654, 13, 683, 492, 173, - 655, 12, 1010, 933, 1064, 656, 657, nil, nil, 342, - nil, 661, nil, nil, nil, nil, nil, 539, nil, 670, - nil, 543, 544, 545, 681, nil, 648, 342, nil, nil, - 670, 670, 670, 670, 670, 557, 670, 670, nil, 974, - 975, 873, 923, nil, nil, nil, nil, 896, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 900, nil, - nil, 888, nil, 901, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 906, nil, nil, - nil, nil, nil, nil, 910, 95, 912, nil, nil, nil, - nil, 907, 907, nil, nil, 1009, nil, nil, nil, 918, - 919, nil, nil, nil, nil, nil, 52, nil, nil, nil, - 924, 925, 926, 927, nil, nil, nil, nil, nil, 934, - nil, nil, nil, 937, 938, 342, 940, 941, nil, nil, - nil, 943, nil, nil, nil, 945, nil, nil, nil, nil, + 482, 483, 993, 484, 485, 486, 949, 221, 394, 58, + 493, 182, 658, 547, 265, 494, 495, 183, 184, 519, + 503, 423, 428, 1032, 512, 659, 662, 994, 399, 522, + 673, 1072, 526, 1081, 505, 509, 520, 532, 533, 534, + 52, 1060, 1090, 537, 538, 1099, 540, 354, 541, 542, + 268, 1120, 930, 546, 95, 548, 549, 550, 551, 52, + 553, 554, 555, 683, 912, 558, 559, 560, 561, 562, + 563, 564, 565, 566, 567, 568, 570, 988, 492, 173, + 1012, 1009, 1010, 417, 572, 531, 573, 574, 1043, 1066, + 431, 432, 997, 674, 677, 678, 679, 680, 535, 682, + 43, 577, 392, 578, 579, 580, 581, 582, 583, 584, + 585, 1020, 586, 875, 1064, 1095, 1105, 552, 1016, 1007, + 599, 599, 604, 604, 604, 1061, 1039, 1076, 1057, 357, + 359, 360, 361, 362, 363, 364, 365, 366, 940, 369, + 370, 1111, 622, 623, 373, 374, 375, 376, 627, 95, + 1093, 95, 1073, 1082, 934, 1091, 1100, 632, 633, 634, + 1109, 1086, 1069, 1042, 999, 1029, 635, 636, 637, 1013, + 638, 236, 980, 639, 640, 641, 642, 643, 644, 539, + 1112, 645, 77, 543, 544, 545, nil, nil, nil, nil, + 655, nil, nil, nil, nil, 656, 657, 557, 496, nil, + 501, 661, nil, nil, nil, nil, nil, nil, nil, 670, + nil, 523, nil, nil, nil, 527, 528, nil, 924, nil, + 670, 670, 670, 670, 670, nil, 670, 670, nil, 975, + 976, 873, nil, 648, 654, nil, nil, nil, nil, nil, + nil, 889, nil, nil, nil, nil, nil, nil, 342, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 976, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 665, nil, nil, nil, nil, - nil, nil, 1096, nil, nil, nil, nil, nil, nil, nil, + 524, 525, nil, nil, nil, 648, 342, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 907, nil, nil, + nil, 908, 908, nil, 911, 95, 913, nil, nil, 919, + 920, nil, 556, nil, nil, 1011, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, 52, nil, nil, nil, + 925, 926, 927, 928, nil, nil, nil, nil, nil, 935, + nil, nil, nil, 938, 939, nil, 941, 942, nil, nil, + nil, 944, nil, nil, nil, 946, nil, 665, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 872, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 977, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, 872, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 342, nil, 1098, nil, nil, nil, + nil, nil, nil, 630, 631, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 973, 974, 681, nil, nil, 978, + nil, 646, nil, nil, nil, nil, nil, nil, nil, 984, + 916, nil, nil, nil, 985, nil, nil, nil, nil, 897, + nil, 989, nil, nil, nil, nil, nil, nil, nil, nil, + 901, nil, nil, nil, nil, 902, nil, nil, nil, 916, + 417, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 972, 973, nil, nil, nil, 977, 915, nil, - nil, nil, nil, nil, nil, nil, nil, 983, nil, nil, - nil, nil, 984, nil, nil, nil, nil, nil, nil, 988, - nil, nil, nil, nil, nil, nil, nil, 915, 417, nil, + 1141, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 1028, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 1139, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 1052, nil, 1131, + nil, nil, 950, nil, nil, 951, nil, 954, 955, nil, + 956, 957, 958, 959, 960, 961, 962, nil, nil, 966, + nil, 968, 968, nil, 1078, nil, 971, nil, nil, 972, + 972, 1085, nil, 95, 979, nil, nil, nil, nil, nil, + nil, 981, 982, 983, 180, nil, nil, nil, 1103, 979, + 570, nil, 986, 987, nil, nil, nil, 990, nil, nil, + nil, 995, nil, 670, nil, nil, 1121, 998, nil, nil, + nil, nil, 1000, 1001, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 1004, nil, nil, nil, nil, + 1006, 1008, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 670, 1024, 1025, 654, nil, nil, nil, nil, 1027, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 1026, 1129, 949, - nil, nil, 950, nil, nil, nil, 953, 954, nil, 955, - 956, 957, 958, 959, 960, 961, nil, nil, 965, nil, - 967, 967, nil, nil, nil, 970, nil, nil, 971, 971, - nil, nil, 95, 978, 1050, nil, nil, nil, nil, nil, - 980, 981, 982, 180, nil, nil, nil, nil, 978, 570, - nil, 985, 986, nil, nil, nil, 989, nil, nil, nil, - 994, 1076, 670, 654, nil, nil, 997, nil, 1083, nil, - nil, 998, 999, nil, nil, nil, 1003, nil, nil, nil, - nil, nil, nil, nil, 1002, 1101, nil, nil, nil, 1004, + nil, nil, nil, nil, 1035, 1036, nil, nil, 1037, 1038, 654, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 1006, nil, nil, 1119, nil, nil, nil, nil, nil, 670, - 1022, 1023, nil, nil, nil, nil, nil, 1025, nil, nil, - nil, nil, nil, nil, 648, nil, nil, nil, nil, nil, - nil, nil, 1033, 1034, nil, nil, 1035, 1036, nil, nil, + nil, nil, nil, 1044, nil, nil, nil, nil, nil, nil, + 1051, nil, 1053, nil, 52, nil, 1056, 1058, 1059, nil, + nil, nil, nil, nil, 1065, 648, 1067, nil, nil, nil, + nil, nil, 1074, 1075, nil, nil, nil, nil, 1077, 1079, + nil, 1080, nil, nil, nil, 1084, 979, 1087, nil, nil, + nil, nil, nil, 1092, nil, nil, nil, nil, nil, nil, + nil, nil, 1102, 1104, nil, nil, 1107, nil, nil, nil, + nil, 1110, 1054, nil, nil, nil, 1114, nil, 1118, nil, + nil, nil, 916, nil, nil, 1124, 1125, 1126, nil, 1128, + 1022, nil, 1129, 1130, nil, nil, nil, 368, nil, nil, + nil, nil, nil, nil, 1138, 1139, nil, 1140, 531, nil, + nil, nil, 1144, 1145, nil, nil, nil, nil, nil, 1005, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 1042, 1053, nil, nil, 1043, nil, nil, 1049, nil, - 1051, nil, 52, nil, 1054, 1056, 1057, nil, nil, nil, - nil, nil, 1063, nil, 1065, nil, nil, nil, nil, nil, - 1072, 1073, nil, nil, nil, nil, 1075, 1077, nil, 1078, - nil, nil, nil, 1082, 978, 1085, nil, nil, 1087, nil, - nil, 1090, nil, nil, nil, nil, nil, 531, nil, nil, - 1100, 1102, nil, nil, 1105, nil, nil, nil, nil, 1108, - 1052, nil, nil, nil, 1112, nil, 1116, nil, nil, nil, - nil, nil, nil, 1122, 1123, 1124, 1125, 1126, nil, nil, - 1127, 1128, nil, nil, nil, 368, nil, nil, nil, nil, - nil, nil, 1136, 1137, nil, 1138, nil, nil, nil, 915, - 1142, 1143, nil, nil, nil, nil, nil, 1020, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, 916, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, 1055, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 915 ] + nil, nil, nil, nil, nil, nil, 1045, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, 1089, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 1127 ] racc_goto_check = [ - 2, 144, 82, 122, 131, 55, 57, 41, 20, 129, - 72, 68, 70, 168, 2, 2, 2, 2, 98, 29, - 122, 122, 122, 40, 2, 73, 2, 2, 2, 60, - 2, 105, 2, 160, 2, 43, 87, 2, 39, 2, - 37, 73, 72, 138, 2, 2, 2, 98, 2, 18, - 127, 127, 127, 127, 160, 107, 16, 58, 58, 2, - 162, 2, 124, 2, 124, 2, 77, 103, 92, 160, - 2, 89, 160, 160, 62, 62, 62, 63, 2, 36, - 140, 2, 62, 87, 2, 56, 160, 2, 160, 130, - 138, 31, 63, 160, 24, 21, 27, 2, 106, 160, - 2, 16, 160, 2, 2, 2, 26, 19, 35, 16, - 151, 75, 2, 2, 160, 2, 2, 130, 24, 2, - 37, 116, 160, 2, 27, 2, 131, 140, 103, 100, - 77, 151, 125, 125, 26, 89, 35, 117, 2, 130, + 2, 82, 131, 144, 55, 29, 57, 121, 121, 121, + 121, 121, 121, 68, 2, 2, 2, 2, 121, 121, + 121, 121, 40, 72, 2, 20, 2, 2, 2, 98, + 2, 73, 2, 160, 2, 41, 169, 2, 43, 2, + 39, 18, 58, 58, 2, 2, 2, 73, 2, 122, + 60, 107, 37, 100, 160, 72, 21, 162, 98, 2, + 63, 2, 92, 2, 129, 2, 122, 122, 122, 160, + 2, 70, 160, 160, 103, 63, 44, 93, 2, 44, + 100, 2, 56, 87, 2, 24, 160, 2, 160, 130, + 138, 31, 26, 160, 101, 93, 77, 2, 89, 160, + 2, 75, 160, 2, 2, 2, 44, 19, 140, 24, + 151, 123, 2, 2, 160, 2, 2, 130, 123, 2, + 26, 101, 160, 2, 131, 2, 127, 127, 127, 127, + 87, 151, 37, 27, 1, 36, 103, 138, 2, 130, 2, 2, 2, 2, 31, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 100, 22, 31, 70, 36, - 93, 56, 56, 2, 2, 2, 2, 2, 9, 2, - 2, 162, 2, 158, 158, 60, 22, 107, 93, 8, - 160, 160, 69, 130, 127, 127, 2, 2, 2, 2, - 2, 2, 2, 2, 58, 2, 156, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 39, 36, 7, - 19, 101, 77, 160, 159, 6, 156, 89, 2, 2, - 2, 130, 75, 132, 2, 161, 133, 160, 2, 2, - 2, 2, 2, 44, 134, 160, 44, 101, 31, 31, - 71, 71, 71, 71, 71, 71, 71, 71, 71, 160, - 71, 71, 2, 2, 123, 71, 71, 71, 71, 159, - 135, 123, 2, 44, 136, 136, 2, 159, 57, 137, - 57, 131, 164, 164, 69, 41, 168, 2, 139, 79, - 136, 79, 141, 79, 142, 69, 69, 55, 55, 143, - 21, 2, 2, 31, 2, 5, 2, 146, 56, 120, - 120, 2, 21, 147, 160, 28, 28, 2, 118, 118, - 118, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 140, 3, 31, 56, 56, + 77, 27, 89, 2, 2, 2, 2, 2, 162, 2, + 2, 4, 2, 107, 62, 62, 62, 28, 28, 58, + 160, 160, 62, 130, 69, 5, 2, 2, 2, 2, + 2, 2, 2, 2, 35, 2, 60, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 120, 120, 39, + 19, 6, 75, 160, 16, 36, 22, 70, 2, 2, + 2, 130, 35, 156, 2, 7, 159, 160, 2, 2, + 2, 2, 2, 125, 125, 160, 22, 8, 31, 31, + 136, 136, 77, 156, 89, 9, 119, 119, 119, 160, + 10, 21, 2, 2, 158, 158, 136, 119, 11, 16, + 127, 127, 2, 21, 36, 12, 2, 16, 57, 131, + 57, 159, 13, 124, 161, 124, 69, 2, 79, 159, + 79, 14, 79, 118, 118, 118, 55, 55, 69, 69, + 15, 2, 2, 31, 2, 56, 2, 165, 165, 17, + 169, 2, 23, 41, 160, 25, 30, 2, 32, 33, + 34, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 62, 2, 2, 2, 78, 73, 78, 43, - 160, 56, 148, 149, 18, 2, 2, 150, 63, 78, - 152, 153, 31, 78, 78, 129, 129, 43, 154, 19, - 75, 71, 71, 155, 75, 20, 161, 2, 2, 2, - 160, 157, 75, 2, 2, 4, 19, 3, 2, 2, - 163, 167, 34, 2, 160, 2, 2, 2, 2, 160, - 2, 2, 2, 71, 57, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 130, 40, 1, 119, - 119, 119, 38, 33, 2, 32, 2, 2, 30, 68, - 119, 45, 92, 94, 94, 94, 94, 94, 31, 94, - 46, 2, 47, 2, 2, 2, 2, 2, 2, 2, - 2, 42, 2, 48, 98, 49, 68, 31, 92, 50, - 19, 19, 19, 19, 19, 122, 121, 121, 121, 121, - 121, 121, 53, 25, 59, 43, 23, 121, 121, 121, - 121, 64, 19, 19, 65, 66, 67, 17, 19, 160, - 72, 160, 15, 74, 71, 71, 14, 2, 2, 2, - 76, 13, 80, 81, 12, 83, 2, 2, 2, 84, - 2, 85, 86, 2, 2, 2, 2, 2, 2, 88, - 90, 2, 71, 91, 161, 161, 11, 95, 96, 97, - 2, 10, 99, 21, 102, 19, 2, nil, nil, 161, - nil, 19, nil, nil, nil, nil, nil, 42, nil, 160, - nil, 42, 42, 42, 78, nil, 161, 161, nil, nil, - 160, 160, 160, 160, 160, 42, 160, 160, nil, 55, - 55, 2, 29, nil, nil, nil, nil, 78, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 78, nil, - nil, 75, nil, 78, nil, nil, nil, nil, nil, nil, + 2, 2, 63, 2, 2, 2, 18, 38, 56, 45, + 160, 46, 43, 73, 47, 2, 2, 48, 49, 50, + 75, 53, 31, 59, 75, 64, 65, 66, 67, 19, + 43, 74, 75, 76, 80, 81, 83, 2, 2, 2, + 160, 84, 85, 2, 2, 86, 19, 88, 2, 2, + 90, 91, 20, 2, 160, 2, 2, 2, 2, 160, + 2, 2, 2, 95, 57, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 130, 40, 96, 97, + 99, 129, 129, 42, 2, 161, 2, 2, 92, 102, + 105, 106, 68, 94, 94, 94, 94, 94, 31, 94, + 116, 2, 62, 2, 2, 2, 2, 2, 2, 2, + 2, 117, 2, 132, 92, 133, 134, 31, 135, 68, + 19, 19, 19, 19, 19, 137, 139, 98, 141, 71, + 71, 71, 71, 71, 71, 71, 71, 71, 43, 71, + 71, 142, 19, 19, 71, 71, 71, 71, 19, 160, + 143, 160, 146, 147, 21, 148, 149, 2, 2, 2, + 150, 152, 153, 154, 121, 72, 2, 2, 2, 155, + 2, 157, 122, 2, 2, 2, 2, 2, 2, 42, + 163, 2, 168, 42, 42, 42, nil, nil, nil, nil, + 2, nil, nil, nil, nil, 19, 2, 42, 78, nil, + 78, 19, nil, nil, nil, nil, nil, nil, nil, 160, + nil, 78, nil, nil, nil, 78, 78, nil, 29, nil, + 160, 160, 160, 160, 160, nil, 160, 160, nil, 55, + 55, 2, nil, 161, 161, nil, nil, nil, nil, nil, + nil, 75, nil, nil, nil, nil, nil, nil, 161, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 71, 71, nil, nil, nil, 161, 161, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 2, nil, nil, - nil, nil, nil, nil, 2, 160, 2, nil, nil, nil, - nil, 75, 75, nil, nil, 55, nil, nil, nil, 75, - 75, nil, nil, nil, nil, nil, 160, nil, nil, nil, + nil, 75, 75, nil, 2, 160, 2, nil, nil, 75, + 75, nil, 71, nil, nil, 55, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, 160, nil, nil, nil, 2, 2, 2, 2, nil, nil, nil, nil, nil, 130, - nil, nil, nil, 2, 2, 161, 2, 2, nil, nil, - nil, 2, nil, nil, nil, 2, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 57, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 42, nil, nil, nil, nil, - nil, nil, 144, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 42, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, 2, 2, nil, 2, 2, nil, nil, + nil, 2, nil, nil, nil, 2, nil, 42, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 57, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, 42, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 161, nil, 144, nil, nil, nil, + nil, nil, nil, 71, 71, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 21, 21, 78, nil, nil, 21, + nil, 71, nil, nil, nil, nil, nil, nil, nil, 21, + 42, nil, nil, nil, 21, nil, nil, nil, nil, 78, + nil, 21, nil, nil, nil, nil, nil, nil, nil, nil, + 78, nil, nil, nil, nil, 78, nil, nil, nil, 42, + 42, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 21, 21, nil, nil, nil, 21, 42, nil, - nil, nil, nil, nil, nil, nil, nil, 21, nil, nil, - nil, nil, 21, nil, nil, nil, nil, nil, nil, 21, - nil, nil, nil, nil, nil, nil, nil, 42, 42, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 131, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 21, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 21, nil, 82, + nil, nil, 2, nil, nil, 2, nil, 2, 2, nil, + 2, 2, 2, 2, 2, 2, 2, nil, nil, 2, + nil, 130, 130, nil, 21, nil, 2, nil, nil, 130, + 130, 21, nil, 160, 130, nil, nil, nil, nil, nil, + nil, 2, 2, 2, 130, nil, nil, nil, 21, 130, + 130, nil, 2, 2, nil, nil, nil, 2, nil, nil, + nil, 160, nil, 160, nil, nil, 21, 2, nil, nil, + nil, nil, 2, 2, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 2, nil, nil, nil, nil, + 2, 75, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 21, 82, 2, - nil, nil, 2, nil, nil, nil, 2, 2, nil, 2, - 2, 2, 2, 2, 2, 2, nil, nil, 2, nil, - 130, 130, nil, nil, nil, 2, nil, nil, 130, 130, - nil, nil, 160, 130, 21, nil, nil, nil, nil, nil, - 2, 2, 2, 130, nil, nil, nil, nil, 130, 130, - nil, 2, 2, nil, nil, nil, 2, nil, nil, nil, - 160, 21, 160, 161, nil, nil, 2, nil, 21, nil, - nil, 2, 2, nil, nil, nil, 78, nil, nil, nil, - nil, nil, nil, nil, 2, 21, nil, nil, nil, 2, + 160, 2, 2, 161, nil, nil, nil, nil, 19, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 2, 2, nil, nil, 2, 2, 161, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 75, nil, nil, 21, nil, nil, nil, nil, nil, 160, - 2, 2, nil, nil, nil, nil, nil, 19, nil, nil, - nil, nil, nil, nil, 161, nil, nil, nil, nil, nil, - nil, nil, 2, 2, nil, nil, 2, 2, nil, nil, + nil, nil, nil, 2, nil, nil, nil, nil, nil, nil, + 2, nil, 130, nil, 160, nil, 2, 19, 2, nil, + nil, nil, nil, nil, 19, 161, 160, nil, nil, nil, + nil, nil, 2, 2, nil, nil, nil, nil, 2, 130, + nil, 2, nil, nil, nil, 19, 130, 160, nil, nil, + nil, nil, nil, 2, nil, nil, nil, nil, nil, nil, + nil, nil, 19, 130, nil, nil, 2, nil, nil, nil, + nil, 2, 31, nil, nil, nil, 2, nil, 2, nil, + nil, nil, 42, nil, nil, 2, 2, 2, nil, 2, + 42, nil, 2, 2, nil, nil, nil, 160, nil, nil, + nil, nil, nil, nil, 2, 2, nil, 2, 161, nil, + nil, nil, 2, 2, nil, nil, nil, nil, nil, 78, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, 42, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, 78, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 2, 78, nil, nil, 71, nil, nil, 2, nil, - 130, nil, 160, nil, 2, 19, 2, nil, nil, nil, - nil, nil, 19, nil, 160, nil, nil, nil, nil, nil, - 2, 2, nil, nil, nil, nil, 2, 130, nil, 2, - nil, nil, nil, 19, 130, 160, nil, nil, 71, nil, - nil, 2, nil, nil, nil, nil, nil, 161, nil, nil, - 19, 130, nil, nil, 2, nil, nil, nil, nil, 2, - 31, nil, nil, nil, 2, nil, 2, nil, nil, nil, - nil, nil, nil, 2, 2, 2, 71, 2, nil, nil, - 2, 2, nil, nil, nil, 160, nil, nil, nil, nil, - nil, nil, 2, 2, nil, 2, nil, nil, nil, 42, - 2, 2, nil, nil, nil, nil, nil, 42, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, 71, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, 71, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 42 ] + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 71 ] racc_goto_pointer = [ - nil, 418, 0, 385, 383, 293, 213, 207, 177, 166, - 529, 524, 485, 478, 460, 432, -13, 277, -519, 0, - -282, -126, 94, 374, 47, 404, 17, 7, 286, -74, - 407, 58, 361, 316, 285, 1, -57, -177, 285, -99, - -517, -262, 161, -190, 214, 396, 319, 260, 332, 334, - 93, nil, nil, 173, nil, -341, -187, -221, -291, -535, - -92, nil, -196, -581, -59, -59, -455, 211, -514, -722, - -109, 0, -514, -47, -566, 9, -571, -55, -11, -81, - 139, 139, -247, 138, -539, -569, -577, -1001, 283, -50, - 335, -584, -593, -389, -127, -40, 178, 420, -609, -445, - -855, -773, -520, -894, nil, -279, -212, -255, nil, nil, - nil, nil, nil, nil, nil, nil, 92, -847, -154, -43, - -161, 12, -450, -336, -835, -328, nil, -428, nil, -607, - 0, -306, -355, -857, -859, -719, -863, -779, -899, -743, - -957, -763, -816, -793, -375, nil, -762, -768, -728, -736, - -741, -946, -715, -695, -657, -605, -886, 242, -449, 145, - 0, 0, -42, -710, 143, nil, nil, 335, -672 ] + nil, 134, 0, 154, 169, 183, 209, 223, 235, 243, + 248, 256, 246, 249, 245, 230, 145, 89, -527, 0, + -265, -165, 154, 200, 38, 236, 3, 44, 158, -88, + 285, 58, 244, 202, 203, 87, -1, -165, 210, -97, + -518, -234, 133, -187, 57, 314, 230, 172, 236, 237, + -7, nil, nil, 62, nil, -342, -190, -221, -306, -648, + -71, nil, -96, -598, -175, -177, -574, 93, -512, -721, + -50, 229, -501, -41, -690, -1, -700, -25, 181, -82, + 11, 11, -248, 9, -669, -700, -706, -956, 151, -23, + 205, -718, -599, -472, -127, -164, 68, 310, -598, -558, + -932, -891, -627, -888, nil, 120, 121, -259, nil, nil, + nil, nil, nil, nil, nil, nil, 411, -534, -179, -216, + -253, -447, -404, -479, -625, -227, nil, -352, nil, -552, + 0, -308, -125, -630, -639, -522, -889, -585, -853, -557, + -931, -579, -621, -594, -373, nil, -569, -580, -587, -595, + -600, -948, -576, -556, -524, -470, -861, 372, -368, 157, + 0, 49, -45, -582, nil, 168, nil, nil, 466, -649 ] racc_goto_default = [ nil, nil, 74, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 588, - nil, 962, 358, nil, nil, nil, nil, 1131, nil, nil, + nil, 963, 358, nil, nil, nil, nil, 1133, nil, nil, nil, 118, nil, nil, nil, nil, nil, nil, nil, nil, 222, 223, 225, nil, nil, nil, nil, nil, nil, nil, nil, 139, 299, nil, 226, nil, 227, nil, nil, nil, @@ -989,10 +1013,10 @@ def parse(input) 171, nil, nil, nil, 310, nil, nil, nil, 433, 434, 435, 436, 437, 438, 439, 440, nil, nil, nil, 587, 603, nil, 590, nil, nil, nil, 597, nil, 616, nil, - 942, 876, 1001, nil, nil, nil, nil, nil, 669, nil, - nil, nil, nil, nil, nil, 1048, nil, nil, nil, nil, - nil, nil, nil, nil, nil, 914, 880, nil, nil, 51, - 234, 55, nil, 877, nil, 881, 884, nil, 686 ] + 943, 876, 1003, nil, nil, nil, nil, nil, 669, nil, + nil, nil, nil, nil, nil, 1050, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 915, 880, nil, nil, 51, + 234, 55, nil, 877, 879, nil, 881, 884, nil, 686 ] racc_reduce_table = [ 0, 0, :racc_error, @@ -1380,220 +1404,222 @@ def parse(input) 1, 319, :_reduce_382, 1, 319, :_reduce_383, 1, 319, :_reduce_384, - 2, 319, :_reduce_385, + 1, 319, :_reduce_385, 4, 262, :_reduce_386, 4, 262, :_reduce_387, - 0, 351, :_reduce_388, - 2, 351, :_reduce_389, + 0, 352, :_reduce_388, + 2, 352, :_reduce_389, 1, 350, :_reduce_390, 1, 350, :_reduce_391, - 2, 352, :_reduce_392, + 2, 353, :_reduce_392, 2, 266, :_reduce_393, 2, 266, :_reduce_394, 1, 343, :_reduce_395, 1, 343, :_reduce_396, - 3, 353, :_reduce_397, - 3, 353, :_reduce_398, - 2, 265, :_reduce_399, - 1, 265, :_reduce_400, - 2, 318, :_reduce_401, - 1, 347, :_reduce_402, - 4, 347, :_reduce_403, - 0, 354, :_reduce_404, - 2, 354, :_reduce_405, - 2, 348, :_reduce_406, - 1, 189, :_reduce_407, - 1, 205, :_reduce_408, - 2, 205, :_reduce_409, - 1, 355, :_reduce_410, - 1, 355, :_reduce_411, - 1, 355, :_reduce_412, - 1, 355, :_reduce_413, - 1, 355, :_reduce_414, - 1, 355, :_reduce_415, - 1, 355, :_reduce_416, - 1, 355, :_reduce_417, - 1, 355, :_reduce_418, - 1, 355, :_reduce_419, - 1, 355, :_reduce_420, - 1, 355, :_reduce_421, - 1, 355, :_reduce_422, - 1, 355, :_reduce_423, - 1, 355, :_reduce_424, - 1, 355, :_reduce_425, - 1, 355, :_reduce_426, - 1, 355, :_reduce_427, - 1, 355, :_reduce_428, - 1, 355, :_reduce_429, - 1, 355, :_reduce_430, - 1, 355, :_reduce_431, - 1, 355, :_reduce_432, - 1, 355, :_reduce_433, - 1, 355, :_reduce_434, - 1, 355, :_reduce_435, - 1, 355, :_reduce_436, - 1, 355, :_reduce_437, - 1, 355, :_reduce_438, - 1, 355, :_reduce_439, - 1, 355, :_reduce_440, - 1, 355, :_reduce_441, - 1, 355, :_reduce_442, - 1, 355, :_reduce_443, - 1, 355, :_reduce_444, - 1, 355, :_reduce_445, - 1, 355, :_reduce_446, - 1, 355, :_reduce_447, - 1, 355, :_reduce_448, - 1, 355, :_reduce_449, - 1, 355, :_reduce_450, - 1, 355, :_reduce_451, - 1, 355, :_reduce_452, - 1, 355, :_reduce_453, - 1, 355, :_reduce_454, - 1, 355, :_reduce_455, - 1, 355, :_reduce_456, - 1, 355, :_reduce_457, - 1, 355, :_reduce_458, - 1, 355, :_reduce_459, - 1, 355, :_reduce_460, - 1, 355, :_reduce_461, - 1, 355, :_reduce_462, - 1, 355, :_reduce_463, - 1, 355, :_reduce_464, - 1, 355, :_reduce_465, - 1, 355, :_reduce_466, - 1, 355, :_reduce_467, - 1, 355, :_reduce_468, - 1, 355, :_reduce_469, - 1, 355, :_reduce_470, - 1, 355, :_reduce_471, - 1, 355, :_reduce_472, - 1, 355, :_reduce_473, - 1, 355, :_reduce_474, - 1, 355, :_reduce_475, - 1, 355, :_reduce_476, - 1, 355, :_reduce_477, - 1, 355, :_reduce_478, - 1, 355, :_reduce_479, - 1, 355, :_reduce_480, - 1, 355, :_reduce_481, - 1, 355, :_reduce_482, - 1, 355, :_reduce_483, - 1, 355, :_reduce_484, - 1, 355, :_reduce_485, - 1, 355, :_reduce_486, - 1, 355, :_reduce_487, - 1, 355, :_reduce_488, - 1, 355, :_reduce_489, - 1, 355, :_reduce_490, - 1, 355, :_reduce_491, - 1, 355, :_reduce_492, - 1, 355, :_reduce_493, - 1, 355, :_reduce_494, - 1, 355, :_reduce_495, - 1, 355, :_reduce_496, - 1, 355, :_reduce_497, - 1, 355, :_reduce_498, - 1, 355, :_reduce_499, - 1, 355, :_reduce_500, - 1, 355, :_reduce_501, - 1, 355, :_reduce_502, - 1, 355, :_reduce_503, - 1, 355, :_reduce_504, - 1, 355, :_reduce_505, - 1, 355, :_reduce_506, - 1, 355, :_reduce_507, - 1, 355, :_reduce_508, - 1, 355, :_reduce_509, - 1, 355, :_reduce_510, - 1, 355, :_reduce_511, - 1, 355, :_reduce_512, - 1, 355, :_reduce_513, - 1, 355, :_reduce_514, - 1, 355, :_reduce_515, - 1, 355, :_reduce_516, - 1, 355, :_reduce_517, - 1, 355, :_reduce_518, - 1, 355, :_reduce_519, - 1, 355, :_reduce_520, - 1, 355, :_reduce_521, - 1, 355, :_reduce_522, - 1, 355, :_reduce_523, - 1, 355, :_reduce_524, - 1, 355, :_reduce_525, - 1, 355, :_reduce_526, - 1, 355, :_reduce_527, - 1, 355, :_reduce_528, - 1, 355, :_reduce_529, - 1, 355, :_reduce_530, - 1, 355, :_reduce_531, - 1, 355, :_reduce_532, - 1, 355, :_reduce_533, - 1, 355, :_reduce_534, - 1, 355, :_reduce_535, - 1, 355, :_reduce_536, - 1, 355, :_reduce_537, - 1, 355, :_reduce_538, - 1, 355, :_reduce_539, - 1, 355, :_reduce_540, - 1, 355, :_reduce_541, - 1, 355, :_reduce_542, - 1, 355, :_reduce_543, - 1, 355, :_reduce_544, - 1, 355, :_reduce_545, - 1, 355, :_reduce_546, - 1, 355, :_reduce_547, - 1, 355, :_reduce_548, - 1, 355, :_reduce_549, - 1, 355, :_reduce_550, - 1, 355, :_reduce_551, - 1, 355, :_reduce_552, - 1, 355, :_reduce_553, - 1, 355, :_reduce_554, - 1, 355, :_reduce_555, - 1, 355, :_reduce_556, - 1, 355, :_reduce_557, - 1, 355, :_reduce_558, - 1, 355, :_reduce_559, - 1, 355, :_reduce_560, - 1, 355, :_reduce_561, - 1, 355, :_reduce_562, - 1, 355, :_reduce_563, - 1, 355, :_reduce_564, - 1, 355, :_reduce_565, - 1, 355, :_reduce_566, - 1, 355, :_reduce_567, - 1, 355, :_reduce_568, - 1, 355, :_reduce_569, - 1, 355, :_reduce_570, - 1, 355, :_reduce_571, - 1, 355, :_reduce_572, - 1, 355, :_reduce_573, - 1, 355, :_reduce_574, - 1, 355, :_reduce_575, - 1, 355, :_reduce_576, - 1, 355, :_reduce_577, - 1, 355, :_reduce_578, - 1, 355, :_reduce_579, - 1, 355, :_reduce_580, - 1, 355, :_reduce_581, - 1, 355, :_reduce_582, - 1, 355, :_reduce_583, - 1, 355, :_reduce_584, - 1, 355, :_reduce_585, - 1, 355, :_reduce_586, - 1, 355, :_reduce_587, - 1, 355, :_reduce_588, - 1, 355, :_reduce_589, - 1, 355, :_reduce_590, - 1, 355, :_reduce_591, - 1, 355, :_reduce_592, - 1, 355, :_reduce_593, - 1, 355, :_reduce_594 ] - -racc_reduce_n = 595 - -racc_shift_n = 1145 + 2, 351, :_reduce_397, + 3, 351, :_reduce_398, + 3, 354, :_reduce_399, + 3, 354, :_reduce_400, + 2, 265, :_reduce_401, + 1, 265, :_reduce_402, + 2, 318, :_reduce_403, + 1, 347, :_reduce_404, + 4, 347, :_reduce_405, + 0, 355, :_reduce_406, + 2, 355, :_reduce_407, + 2, 348, :_reduce_408, + 1, 189, :_reduce_409, + 1, 205, :_reduce_410, + 2, 205, :_reduce_411, + 1, 356, :_reduce_412, + 1, 356, :_reduce_413, + 1, 356, :_reduce_414, + 1, 356, :_reduce_415, + 1, 356, :_reduce_416, + 1, 356, :_reduce_417, + 1, 356, :_reduce_418, + 1, 356, :_reduce_419, + 1, 356, :_reduce_420, + 1, 356, :_reduce_421, + 1, 356, :_reduce_422, + 1, 356, :_reduce_423, + 1, 356, :_reduce_424, + 1, 356, :_reduce_425, + 1, 356, :_reduce_426, + 1, 356, :_reduce_427, + 1, 356, :_reduce_428, + 1, 356, :_reduce_429, + 1, 356, :_reduce_430, + 1, 356, :_reduce_431, + 1, 356, :_reduce_432, + 1, 356, :_reduce_433, + 1, 356, :_reduce_434, + 1, 356, :_reduce_435, + 1, 356, :_reduce_436, + 1, 356, :_reduce_437, + 1, 356, :_reduce_438, + 1, 356, :_reduce_439, + 1, 356, :_reduce_440, + 1, 356, :_reduce_441, + 1, 356, :_reduce_442, + 1, 356, :_reduce_443, + 1, 356, :_reduce_444, + 1, 356, :_reduce_445, + 1, 356, :_reduce_446, + 1, 356, :_reduce_447, + 1, 356, :_reduce_448, + 1, 356, :_reduce_449, + 1, 356, :_reduce_450, + 1, 356, :_reduce_451, + 1, 356, :_reduce_452, + 1, 356, :_reduce_453, + 1, 356, :_reduce_454, + 1, 356, :_reduce_455, + 1, 356, :_reduce_456, + 1, 356, :_reduce_457, + 1, 356, :_reduce_458, + 1, 356, :_reduce_459, + 1, 356, :_reduce_460, + 1, 356, :_reduce_461, + 1, 356, :_reduce_462, + 1, 356, :_reduce_463, + 1, 356, :_reduce_464, + 1, 356, :_reduce_465, + 1, 356, :_reduce_466, + 1, 356, :_reduce_467, + 1, 356, :_reduce_468, + 1, 356, :_reduce_469, + 1, 356, :_reduce_470, + 1, 356, :_reduce_471, + 1, 356, :_reduce_472, + 1, 356, :_reduce_473, + 1, 356, :_reduce_474, + 1, 356, :_reduce_475, + 1, 356, :_reduce_476, + 1, 356, :_reduce_477, + 1, 356, :_reduce_478, + 1, 356, :_reduce_479, + 1, 356, :_reduce_480, + 1, 356, :_reduce_481, + 1, 356, :_reduce_482, + 1, 356, :_reduce_483, + 1, 356, :_reduce_484, + 1, 356, :_reduce_485, + 1, 356, :_reduce_486, + 1, 356, :_reduce_487, + 1, 356, :_reduce_488, + 1, 356, :_reduce_489, + 1, 356, :_reduce_490, + 1, 356, :_reduce_491, + 1, 356, :_reduce_492, + 1, 356, :_reduce_493, + 1, 356, :_reduce_494, + 1, 356, :_reduce_495, + 1, 356, :_reduce_496, + 1, 356, :_reduce_497, + 1, 356, :_reduce_498, + 1, 356, :_reduce_499, + 1, 356, :_reduce_500, + 1, 356, :_reduce_501, + 1, 356, :_reduce_502, + 1, 356, :_reduce_503, + 1, 356, :_reduce_504, + 1, 356, :_reduce_505, + 1, 356, :_reduce_506, + 1, 356, :_reduce_507, + 1, 356, :_reduce_508, + 1, 356, :_reduce_509, + 1, 356, :_reduce_510, + 1, 356, :_reduce_511, + 1, 356, :_reduce_512, + 1, 356, :_reduce_513, + 1, 356, :_reduce_514, + 1, 356, :_reduce_515, + 1, 356, :_reduce_516, + 1, 356, :_reduce_517, + 1, 356, :_reduce_518, + 1, 356, :_reduce_519, + 1, 356, :_reduce_520, + 1, 356, :_reduce_521, + 1, 356, :_reduce_522, + 1, 356, :_reduce_523, + 1, 356, :_reduce_524, + 1, 356, :_reduce_525, + 1, 356, :_reduce_526, + 1, 356, :_reduce_527, + 1, 356, :_reduce_528, + 1, 356, :_reduce_529, + 1, 356, :_reduce_530, + 1, 356, :_reduce_531, + 1, 356, :_reduce_532, + 1, 356, :_reduce_533, + 1, 356, :_reduce_534, + 1, 356, :_reduce_535, + 1, 356, :_reduce_536, + 1, 356, :_reduce_537, + 1, 356, :_reduce_538, + 1, 356, :_reduce_539, + 1, 356, :_reduce_540, + 1, 356, :_reduce_541, + 1, 356, :_reduce_542, + 1, 356, :_reduce_543, + 1, 356, :_reduce_544, + 1, 356, :_reduce_545, + 1, 356, :_reduce_546, + 1, 356, :_reduce_547, + 1, 356, :_reduce_548, + 1, 356, :_reduce_549, + 1, 356, :_reduce_550, + 1, 356, :_reduce_551, + 1, 356, :_reduce_552, + 1, 356, :_reduce_553, + 1, 356, :_reduce_554, + 1, 356, :_reduce_555, + 1, 356, :_reduce_556, + 1, 356, :_reduce_557, + 1, 356, :_reduce_558, + 1, 356, :_reduce_559, + 1, 356, :_reduce_560, + 1, 356, :_reduce_561, + 1, 356, :_reduce_562, + 1, 356, :_reduce_563, + 1, 356, :_reduce_564, + 1, 356, :_reduce_565, + 1, 356, :_reduce_566, + 1, 356, :_reduce_567, + 1, 356, :_reduce_568, + 1, 356, :_reduce_569, + 1, 356, :_reduce_570, + 1, 356, :_reduce_571, + 1, 356, :_reduce_572, + 1, 356, :_reduce_573, + 1, 356, :_reduce_574, + 1, 356, :_reduce_575, + 1, 356, :_reduce_576, + 1, 356, :_reduce_577, + 1, 356, :_reduce_578, + 1, 356, :_reduce_579, + 1, 356, :_reduce_580, + 1, 356, :_reduce_581, + 1, 356, :_reduce_582, + 1, 356, :_reduce_583, + 1, 356, :_reduce_584, + 1, 356, :_reduce_585, + 1, 356, :_reduce_586, + 1, 356, :_reduce_587, + 1, 356, :_reduce_588, + 1, 356, :_reduce_589, + 1, 356, :_reduce_590, + 1, 356, :_reduce_591, + 1, 356, :_reduce_592, + 1, 356, :_reduce_593, + 1, 356, :_reduce_594, + 1, 356, :_reduce_595, + 1, 356, :_reduce_596 ] + +racc_reduce_n = 597 + +racc_shift_n = 1147 racc_token_table = { false => 0, @@ -1763,15 +1789,15 @@ def parse(input) :S_EQUAL => 164, :S_LEFT_PAREN => 165, :S_RIGHT_PAREN => 166, - :CURRENT_TIMESTAMP => 167, - :S_SINGLEQUOTE_IN => 168, - :S_SINGLEQUOTE_OUT => 169, - :S_DOUBLEQUOTE_IN => 170, - :S_DOUBLEQUOTE_OUT => 171, - :S_STRING_IN_QUOTE => 172, - :S_FLOAT => 173, - :S_ZERO => 174, - :S_ONE => 175, + :S_SINGLEQUOTE_IN => 167, + :S_SINGLEQUOTE_OUT => 168, + :S_DOUBLEQUOTE_IN => 169, + :S_DOUBLEQUOTE_OUT => 170, + :S_STRING_IN_QUOTE => 171, + :S_FLOAT => 172, + :S_ZERO => 173, + :S_ONE => 174, + :CURRENT_TIMESTAMP => 175, :S_MINUS => 176, :S_NAT => 177, :NULL => 178, @@ -1972,7 +1998,6 @@ def parse(input) "S_EQUAL", "S_LEFT_PAREN", "S_RIGHT_PAREN", - "CURRENT_TIMESTAMP", "S_SINGLEQUOTE_IN", "S_SINGLEQUOTE_OUT", "S_DOUBLEQUOTE_IN", @@ -1981,6 +2006,7 @@ def parse(input) "S_FLOAT", "S_ZERO", "S_ONE", + "CURRENT_TIMESTAMP", "S_MINUS", "S_NAT", "NULL", @@ -2156,6 +2182,7 @@ def parse(input) "raw_ident", "r_user_name_part", "number", + "current_timestamp", "opt_string_in_quote", "float", "negative_integer", @@ -2171,3566 +2198,3578 @@ def parse(input) module_eval(<<'.,.,', 'mysql.y.rb', 6) def _reduce_1(val, _values) call(:root, nil, val) - + end .,., module_eval(<<'.,.,', 'mysql.y.rb', 10) def _reduce_2(val, _values) - call(:r_commands, :ALTER_TABLE, val) + call(:r_commands, :ALTER_TABLE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 11) def _reduce_3(val, _values) - call(:r_commands, :CREATE_TABLE, val) + call(:r_commands, :CREATE_TABLE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 12) def _reduce_4(val, _values) - call(:r_commands, :DROP_TABLE, val) + call(:r_commands, :DROP_TABLE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 13) def _reduce_5(val, _values) - call(:r_commands, :DROP_VIEW, val) + call(:r_commands, :DROP_VIEW, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 14) def _reduce_6(val, _values) - call(:r_commands, :CREATE_VIEW, val) + call(:r_commands, :CREATE_VIEW, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 15) def _reduce_7(val, _values) - call(:r_commands, :TRUNCATE_TABLE, val) + call(:r_commands, :TRUNCATE_TABLE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 16) def _reduce_8(val, _values) - call(:r_commands, :CREATE_INDEX, val) + call(:r_commands, :CREATE_INDEX, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 17) def _reduce_9(val, _values) - call(:r_commands, :DROP_INDEX, val) + call(:r_commands, :DROP_INDEX, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 26) def _reduce_10(val, _values) - call(:r_CREATE_VIEW, nil, val) + call(:r_CREATE_VIEW, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 29) def _reduce_11(val, _values) - call(:r_opt_COLUMN_list, :empty, val) + call(:r_opt_COLUMN_list, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 31) def _reduce_12(val, _values) - call(:r_opt_COLUMN_list, :body, val) + call(:r_opt_COLUMN_list, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 34) def _reduce_13(val, _values) - call(:r_opt_OR_REPLACE, :empty, val) + call(:r_opt_OR_REPLACE, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 36) def _reduce_14(val, _values) - call(:r_opt_OR_REPLACE, :body, val) + call(:r_opt_OR_REPLACE, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 39) def _reduce_15(val, _values) - call(:r_opt_ALGORITHM_with_val, :empty, val) + call(:r_opt_ALGORITHM_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 41) def _reduce_16(val, _values) - call(:r_opt_ALGORITHM_with_val, :UNDEFINED, val) + call(:r_opt_ALGORITHM_with_val, :UNDEFINED, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 43) def _reduce_17(val, _values) - call(:r_opt_ALGORITHM_with_val, :MERGE, val) + call(:r_opt_ALGORITHM_with_val, :MERGE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 45) def _reduce_18(val, _values) - call(:r_opt_ALGORITHM_with_val, :TEMPTABLE, val) + call(:r_opt_ALGORITHM_with_val, :TEMPTABLE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 48) def _reduce_19(val, _values) - call(:r_opt_DEFINER_with_val, :empty, val) + call(:r_opt_DEFINER_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 50) def _reduce_20(val, _values) - call(:r_opt_DEFINER_with_val, :user_name, val) + call(:r_opt_DEFINER_with_val, :user_name, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 52) def _reduce_21(val, _values) - call(:r_opt_DEFINER_with_val, :CURRENT_USER, val) + call(:r_opt_DEFINER_with_val, :CURRENT_USER, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 55) def _reduce_22(val, _values) - call(:r_opt_SQL_SECURITY, :empty, val) + call(:r_opt_SQL_SECURITY, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 57) def _reduce_23(val, _values) - call(:r_opt_SQL_SECURITY, :DEFINER, val) + call(:r_opt_SQL_SECURITY, :DEFINER, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 59) def _reduce_24(val, _values) - call(:r_opt_SQL_SECURITY, :INVOKER, val) + call(:r_opt_SQL_SECURITY, :INVOKER, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 68) def _reduce_25(val, _values) - call(:r_DROP_VIEW, nil, val) + call(:r_DROP_VIEW, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 71) def _reduce_26(val, _values) - call(:r_opt_IF_EXISTS, :empty, val) + call(:r_opt_IF_EXISTS, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 73) def _reduce_27(val, _values) - call(:r_opt_IF_EXISTS, :body, val) + call(:r_opt_IF_EXISTS, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 76) def _reduce_28(val, _values) - call(:r_opt_RESTRICT_or_CASCADE, :empty, val) + call(:r_opt_RESTRICT_or_CASCADE, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 78) def _reduce_29(val, _values) - call(:r_opt_RESTRICT_or_CASCADE, :body, val) + call(:r_opt_RESTRICT_or_CASCADE, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 87) def _reduce_30(val, _values) - call(:r_DROP_TABLE, nil, val) + call(:r_DROP_TABLE, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 95) def _reduce_31(val, _values) - call(:r_TRUNCATE_TABLE, nil, val) + call(:r_TRUNCATE_TABLE, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 104) def _reduce_32(val, _values) - call(:r_CREATE_TABLE, nil, val) + call(:r_CREATE_TABLE, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 108) def _reduce_33(val, _values) - call(:r_create_variation, :with_list_without_select, val) + call(:r_create_variation, :with_list_without_select, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 111) def _reduce_34(val, _values) - call(:r_create_variation, :with_list_with_select, val) + call(:r_create_variation, :with_list_with_select, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 113) def _reduce_35(val, _values) - call(:r_create_variation, :without_list_with_select, val) + call(:r_create_variation, :without_list_with_select, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 115) def _reduce_36(val, _values) - call(:r_create_variation, :LIKE_with_paren, val) + call(:r_create_variation, :LIKE_with_paren, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 117) def _reduce_37(val, _values) - call(:r_create_variation, :LIKE_without_paren, val) + call(:r_create_variation, :LIKE_without_paren, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 121) def _reduce_38(val, _values) - call(:r_create_definition_list, nil, val) + call(:r_create_definition_list, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 124) def _reduce_39(val, _values) - call(:r_opt_TEMPORARY, :empty, val) + call(:r_opt_TEMPORARY, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 126) def _reduce_40(val, _values) - call(:r_opt_TEMPORARY, :body, val) + call(:r_opt_TEMPORARY, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 129) def _reduce_41(val, _values) - call(:r_opt_TABLE, :empty, val) + call(:r_opt_TABLE, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 131) def _reduce_42(val, _values) - call(:r_opt_TABLE, :body, val) + call(:r_opt_TABLE, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 134) def _reduce_43(val, _values) - call(:r_opt_IF_NOT_EXISTS, :empty, val) + call(:r_opt_IF_NOT_EXISTS, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 136) def _reduce_44(val, _values) - call(:r_opt_IF_NOT_EXISTS, :body, val) + call(:r_opt_IF_NOT_EXISTS, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 140) def _reduce_45(val, _values) - call(:r_create_definition, :col, val) + call(:r_create_definition, :col, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 142) def _reduce_46(val, _values) - call(:r_create_definition, :shared_create_alter, val) + call(:r_create_definition, :shared_create_alter, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 144) def _reduce_47(val, _values) raise 'check not supported' # incomplete grammar - + end .,., module_eval(<<'.,.,', 'mysql.y.rb', 149) def _reduce_48(val, _values) - call(:r_col_name_with_definition, nil, val) + call(:r_col_name_with_definition, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 158) def _reduce_49(val, _values) - call(:r_ALTER_TABLE, nil, val) + call(:r_ALTER_TABLE, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 161) def _reduce_50(val, _values) - call(:r_opt_ONLINE_OFFLINE, :empty, val) + call(:r_opt_ONLINE_OFFLINE, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 163) def _reduce_51(val, _values) - call(:r_opt_ONLINE_OFFLINE, :ONLINE, val) + call(:r_opt_ONLINE_OFFLINE, :ONLINE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 165) def _reduce_52(val, _values) - call(:r_opt_ONLINE_OFFLINE, :OFFLINE, val) + call(:r_opt_ONLINE_OFFLINE, :OFFLINE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 168) def _reduce_53(val, _values) - call(:r_opt_IGNORE, :empty, val) + call(:r_opt_IGNORE, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 170) def _reduce_54(val, _values) - call(:r_opt_IGNORE, :body, val) + call(:r_opt_IGNORE, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 173) def _reduce_55(val, _values) - call(:r_opt_alter_commands, :empty, val) + call(:r_opt_alter_commands, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 175) def _reduce_56(val, _values) - call(:r_opt_alter_commands, :list, val) + call(:r_opt_alter_commands, :list, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 177) def _reduce_57(val, _values) - call(:r_opt_alter_commands, :single, val) + call(:r_opt_alter_commands, :single, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 180) def _reduce_58(val, _values) - call(:r_ROW_FORMAT_option, :DEFAULT, val) + call(:r_ROW_FORMAT_option, :DEFAULT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 181) def _reduce_59(val, _values) - call(:r_ROW_FORMAT_option, :DYNAMIC, val) + call(:r_ROW_FORMAT_option, :DYNAMIC, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 182) def _reduce_60(val, _values) - call(:r_ROW_FORMAT_option, :COMPRESSED, val) + call(:r_ROW_FORMAT_option, :COMPRESSED, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 183) def _reduce_61(val, _values) - call(:r_ROW_FORMAT_option, :FIXED, val) + call(:r_ROW_FORMAT_option, :FIXED, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 184) def _reduce_62(val, _values) - call(:r_ROW_FORMAT_option, :REDUNDANT, val) + call(:r_ROW_FORMAT_option, :REDUNDANT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 185) def _reduce_63(val, _values) - call(:r_ROW_FORMAT_option, :COMPACT, val) + call(:r_ROW_FORMAT_option, :COMPACT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 188) def _reduce_64(val, _values) - call(:r_opt_CREATE_TABLE_options, :empty, val) + call(:r_opt_CREATE_TABLE_options, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 190) def _reduce_65(val, _values) - call(:r_opt_CREATE_TABLE_options, :body, val) + call(:r_opt_CREATE_TABLE_options, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 193) def _reduce_66(val, _values) - call(:r_opt_PARTITION_options, :empty, val) + call(:r_opt_PARTITION_options, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 195) def _reduce_67(val, _values) - call(:r_opt_PARTITION_options, :REMOVE, val) + call(:r_opt_PARTITION_options, :REMOVE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 198) def _reduce_68(val, _values) - call(:r_opt_PARTITION_options, :PARTITION, val) + call(:r_opt_PARTITION_options, :PARTITION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 202) def _reduce_69(val, _values) - call(:r_select_statement, nil, val) + call(:r_select_statement, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 206) def _reduce_70(val, _values) - call(:r_shared_create_alter, :PRIMARY, val) + call(:r_shared_create_alter, :PRIMARY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 208) def _reduce_71(val, _values) - call(:r_shared_create_alter, :alter_index, val) + call(:r_shared_create_alter, :alter_index, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 211) def _reduce_72(val, _values) - call(:r_shared_create_alter, :UNIQUE, val) + call(:r_shared_create_alter, :UNIQUE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 213) def _reduce_73(val, _values) - call(:r_shared_create_alter, :FULLTEXT, val) + call(:r_shared_create_alter, :FULLTEXT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 215) def _reduce_74(val, _values) - call(:r_shared_create_alter, :SPATIAL, val) + call(:r_shared_create_alter, :SPATIAL, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 217) def _reduce_75(val, _values) - call(:r_shared_create_alter, :FOREIGN_KEY, val) + call(:r_shared_create_alter, :FOREIGN_KEY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 221) def _reduce_76(val, _values) - call(:r_alter_specification, :table_options, val) + call(:r_alter_specification, :table_options, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 223) def _reduce_77(val, _values) - call(:r_alter_specification, :ADD_col, val) + call(:r_alter_specification, :ADD_col, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 225) def _reduce_78(val, _values) - call(:r_alter_specification, :ADD_cols, val) + call(:r_alter_specification, :ADD_cols, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 227) def _reduce_79(val, _values) - call(:r_alter_specification, :ADD_shared, val) + call(:r_alter_specification, :ADD_shared, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 229) def _reduce_80(val, _values) - call(:r_alter_specification, :ALTER_col_SET_or_DROP_DEFAULT, val) + call(:r_alter_specification, :ALTER_col_SET_or_DROP_DEFAULT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 232) def _reduce_81(val, _values) - call(:r_alter_specification, :CHANGE_col, val) + call(:r_alter_specification, :CHANGE_col, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 234) def _reduce_82(val, _values) - call(:r_alter_specification, :DROP_col, val) + call(:r_alter_specification, :DROP_col, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 236) def _reduce_83(val, _values) - call(:r_alter_specification, :DROP_FOREIGN_KEY, val) + call(:r_alter_specification, :DROP_FOREIGN_KEY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 238) def _reduce_84(val, _values) - call(:r_alter_specification, :DISABLE_KEYS, val) + call(:r_alter_specification, :DISABLE_KEYS, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 240) def _reduce_85(val, _values) - call(:r_alter_specification, :ENABLE_KEYS, val) + call(:r_alter_specification, :ENABLE_KEYS, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 242) def _reduce_86(val, _values) - call(:r_alter_specification, :RENAME, val) + call(:r_alter_specification, :RENAME, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 244) def _reduce_87(val, _values) - call(:r_alter_specification, :CONVERT, val) + call(:r_alter_specification, :CONVERT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 246) def _reduce_88(val, _values) - call(:r_alter_specification, :CHARACTER_SET_COLLATE, val) + call(:r_alter_specification, :CHARACTER_SET_COLLATE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 249) def _reduce_89(val, _values) - call(:r_alter_specification, :DROP_index, val) + call(:r_alter_specification, :DROP_index, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 251) def _reduce_90(val, _values) - call(:r_alter_specification, :MODIFY_col, val) + call(:r_alter_specification, :MODIFY_col, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 253) def _reduce_91(val, _values) - call(:r_alter_specification, :DROP_PRIMARY_KEY, val) + call(:r_alter_specification, :DROP_PRIMARY_KEY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 256) def _reduce_92(val, _values) - call(:r_opt_after_alter, :empty, val) + call(:r_opt_after_alter, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 258) def _reduce_93(val, _values) - call(:r_opt_after_alter, :ORDER_BY, val) + call(:r_opt_after_alter, :ORDER_BY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 262) def _reduce_94(val, _values) - call(:r_DATA_DIRECTORY_equal_with_val, nil, val) + call(:r_DATA_DIRECTORY_equal_with_val, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 266) def _reduce_95(val, _values) - call(:r_INDEX_DIRECTORY_equal_with_val, nil, val) + call(:r_INDEX_DIRECTORY_equal_with_val, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 272) def _reduce_96(val, _values) - call(:r_shared_table_option, :AUTO_INCREMENT, val) + call(:r_shared_table_option, :AUTO_INCREMENT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 274) def _reduce_97(val, _values) - call(:r_shared_table_option, :AVG_ROW_LENGTH, val) + call(:r_shared_table_option, :AVG_ROW_LENGTH, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 276) def _reduce_98(val, _values) - call(:r_shared_table_option, :CHARACTER_SET, val) + call(:r_shared_table_option, :CHARACTER_SET, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 278) def _reduce_99(val, _values) - call(:r_shared_table_option, :CHECKSUM, val) + call(:r_shared_table_option, :CHECKSUM, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 280) def _reduce_100(val, _values) - call(:r_shared_table_option, :CONNECTION, val) + call(:r_shared_table_option, :CONNECTION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 282) def _reduce_101(val, _values) - call(:r_shared_table_option, :DELAY_KEY_WRITE, val) + call(:r_shared_table_option, :DELAY_KEY_WRITE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 284) def _reduce_102(val, _values) - call(:r_shared_table_option, :INSERT_METHOD, val) + call(:r_shared_table_option, :INSERT_METHOD, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 286) def _reduce_103(val, _values) - call(:r_shared_table_option, :PACK_KEYS, val) + call(:r_shared_table_option, :PACK_KEYS, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 288) def _reduce_104(val, _values) - call(:r_shared_table_option, :PASSWORD, val) + call(:r_shared_table_option, :PASSWORD, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 290) def _reduce_105(val, _values) - call(:r_shared_table_option, :ROW_FORMAT, val) + call(:r_shared_table_option, :ROW_FORMAT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 292) def _reduce_106(val, _values) - call(:r_shared_table_option, :TABLESPACE, val) + call(:r_shared_table_option, :TABLESPACE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 295) def _reduce_107(val, _values) - call(:r_shared_table_option, :UNION, val) + call(:r_shared_table_option, :UNION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 297) def _reduce_108(val, _values) - call(:r_shared_table_option, :KEY_BLOCK_SIZE, val) + call(:r_shared_table_option, :KEY_BLOCK_SIZE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 299) def _reduce_109(val, _values) - call(:r_shared_table_option, :COMMENT, val) + call(:r_shared_table_option, :COMMENT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 301) def _reduce_110(val, _values) - call(:r_shared_table_option, :DATA_DIRECTORY, val) + call(:r_shared_table_option, :DATA_DIRECTORY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 303) def _reduce_111(val, _values) - call(:r_shared_table_option, :INDEX_DIRECTORY, val) + call(:r_shared_table_option, :INDEX_DIRECTORY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 305) def _reduce_112(val, _values) - call(:r_shared_table_option, :MAX_ROWS, val) + call(:r_shared_table_option, :MAX_ROWS, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 307) def _reduce_113(val, _values) - call(:r_shared_table_option, :MIN_ROWS, val) + call(:r_shared_table_option, :MIN_ROWS, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 309) def _reduce_114(val, _values) - call(:r_shared_table_option, :ENGINE, val) + call(:r_shared_table_option, :ENGINE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 313) def _reduce_115(val, _values) - call(:r_CREATE_TABLE_option, :shared, val) + call(:r_CREATE_TABLE_option, :shared, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 315) def _reduce_116(val, _values) - call(:r_CREATE_TABLE_option, :COLLATE, val) + call(:r_CREATE_TABLE_option, :COLLATE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 321) def _reduce_117(val, _values) - call(:r_alter_table_option, nil, val) + call(:r_alter_table_option, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 325) def _reduce_118(val, _values) - call(:r_opt_NODEGROUP_equal_with_val, :empty, val) + call(:r_opt_NODEGROUP_equal_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 327) def _reduce_119(val, _values) - call(:r_opt_NODEGROUP_equal_with_val, :body, val) + call(:r_opt_NODEGROUP_equal_with_val, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 331) def _reduce_120(val, _values) - call(:r_single_alter_specification, :DISCARD_TABLESPACE, val) + call(:r_single_alter_specification, :DISCARD_TABLESPACE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 333) def _reduce_121(val, _values) - call(:r_single_alter_specification, :IMPORT_TABLESPACE, val) + call(:r_single_alter_specification, :IMPORT_TABLESPACE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 335) def _reduce_122(val, _values) - call(:r_single_alter_specification, :ADD_PARTITION, val) + call(:r_single_alter_specification, :ADD_PARTITION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 337) def _reduce_123(val, _values) - call(:r_single_alter_specification, :DROP_PARTITION, val) + call(:r_single_alter_specification, :DROP_PARTITION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 339) def _reduce_124(val, _values) - call(:r_single_alter_specification, :REBUILD_PARTITION, val) + call(:r_single_alter_specification, :REBUILD_PARTITION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 341) def _reduce_125(val, _values) - call(:r_single_alter_specification, :OPTIMIZE_PARTITION, val) + call(:r_single_alter_specification, :OPTIMIZE_PARTITION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 343) def _reduce_126(val, _values) - call(:r_single_alter_specification, :ANALYZE_PARTITION, val) + call(:r_single_alter_specification, :ANALYZE_PARTITION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 345) def _reduce_127(val, _values) - call(:r_single_alter_specification, :CHECK_PARTITION, val) + call(:r_single_alter_specification, :CHECK_PARTITION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 347) def _reduce_128(val, _values) - call(:r_single_alter_specification, :REPAIR_PARTITION, val) + call(:r_single_alter_specification, :REPAIR_PARTITION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 349) def _reduce_129(val, _values) - call(:r_single_alter_specification, :COALESCE_PARTITION, val) + call(:r_single_alter_specification, :COALESCE_PARTITION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 351) def _reduce_130(val, _values) - call(:r_single_alter_specification, :TRUNCATE_PARTITION, val) + call(:r_single_alter_specification, :TRUNCATE_PARTITION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 353) def _reduce_131(val, _values) - call(:r_single_alter_specification, :REORGANIZE_PARTITION, val) + call(:r_single_alter_specification, :REORGANIZE_PARTITION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 356) def _reduce_132(val, _values) - call(:r_opt_CONSTRAINT_with_val, :empty, val) + call(:r_opt_CONSTRAINT_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 358) def _reduce_133(val, _values) - call(:r_opt_CONSTRAINT_with_val, :CONTRAINT_without_symbol, val) + call(:r_opt_CONSTRAINT_with_val, :CONTRAINT_without_symbol, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 360) def _reduce_134(val, _values) - call(:r_opt_CONSTRAINT_with_val, :CONTRAINT_with_symbol, val) + call(:r_opt_CONSTRAINT_with_val, :CONTRAINT_with_symbol, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 364) def _reduce_135(val, _values) - call(:r_CHARACTER_SET_equal_with_val, nil, val) + call(:r_CHARACTER_SET_equal_with_val, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 369) def _reduce_136(val, _values) - call(:r_alter_index_opt, nil, val) + call(:r_alter_index_opt, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 372) def _reduce_137(val, _values) - call(:r_opt_INDEX_or_KEY, :empty, val) + call(:r_opt_INDEX_or_KEY, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 374) def _reduce_138(val, _values) - call(:r_opt_INDEX_or_KEY, :body, val) + call(:r_opt_INDEX_or_KEY, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 378) def _reduce_139(val, _values) - call(:r_INDEX_or_KEY, :INDEX, val) + call(:r_INDEX_or_KEY, :INDEX, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 380) def _reduce_140(val, _values) - call(:r_INDEX_or_KEY, :KEY, val) + call(:r_INDEX_or_KEY, :KEY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 383) def _reduce_141(val, _values) - call(:r_opt_index_name, :empty, val) + call(:r_opt_index_name, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 385) def _reduce_142(val, _values) - call(:r_opt_index_name, :body, val) + call(:r_opt_index_name, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 388) def _reduce_143(val, _values) - call(:r_opt_index_type, :empty, val) + call(:r_opt_index_type, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 390) def _reduce_144(val, _values) - call(:r_opt_index_type, :body, val) + call(:r_opt_index_type, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 394) def _reduce_145(val, _values) - call(:r_index_type, :BTREE, val) + call(:r_index_type, :BTREE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 396) def _reduce_146(val, _values) - call(:r_index_type, :HASH, val) + call(:r_index_type, :HASH, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 400) def _reduce_147(val, _values) - call(:r_index_option, :index_type, val) + call(:r_index_option, :index_type, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 402) def _reduce_148(val, _values) - call(:r_index_option, :KEY_BLOCK_SIZE, val) + call(:r_index_option, :KEY_BLOCK_SIZE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 404) def _reduce_149(val, _values) - call(:r_index_option, :WITH_PARSER, val) + call(:r_index_option, :WITH_PARSER, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 408) def _reduce_150(val, _values) - call(:r_SET_or_DROP_DEFAULT, :SET, val) + call(:r_SET_or_DROP_DEFAULT, :SET, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 410) def _reduce_151(val, _values) - call(:r_SET_or_DROP_DEFAULT, :DROP, val) + call(:r_SET_or_DROP_DEFAULT, :DROP, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 413) def _reduce_152(val, _values) - call(:r_opt_COLUMN, :empty, val) + call(:r_opt_COLUMN, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 415) def _reduce_153(val, _values) - call(:r_opt_COLUMN, :body, val) + call(:r_opt_COLUMN, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 419) def _reduce_154(val, _values) - call(:r_column_definition, nil, val) + call(:r_column_definition, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 422) def _reduce_155(val, _values) - call(:r_opt_column_attribute, :empty, val) + call(:r_opt_column_attribute, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 423) def _reduce_156(val, _values) - call(:r_opt_column_attribute, :column_attributes, val) + call(:r_opt_column_attribute, :column_attributes, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 426) def _reduce_157(val, _values) - call(:r_column_attribute, :NULL_status, val) + call(:r_column_attribute, :NULL_status, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 427) def _reduce_158(val, _values) - call(:r_column_attribute, :DEFAULT, val) + call(:r_column_attribute, :DEFAULT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 428) def _reduce_159(val, _values) - call(:r_column_attribute, :AUTO_INCREMENT, val) + call(:r_column_attribute, :AUTO_INCREMENT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 429) def _reduce_160(val, _values) - call(:r_column_attribute, :UNIQUE_or_PRIMARY, val) + call(:r_column_attribute, :UNIQUE_or_PRIMARY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 430) def _reduce_161(val, _values) - call(:r_column_attribute, :COMMENT, val) + call(:r_column_attribute, :COMMENT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 431) def _reduce_162(val, _values) - call(:r_column_attribute, :COLUMN_FORMAT, val) + call(:r_column_attribute, :COLUMN_FORMAT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 432) def _reduce_163(val, _values) - call(:r_column_attribute, :STORAGE, val) + call(:r_column_attribute, :STORAGE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 433) def _reduce_164(val, _values) - call(:r_column_attribute, :COLUMN_ON_UPDATE, val) + call(:r_column_attribute, :COLUMN_ON_UPDATE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 444) def _reduce_165(val, _values) - call(:r_CREATE_INDEX, nil, val) + call(:r_CREATE_INDEX, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 447) def _reduce_166(val, _values) - call(:r_opt_UNIQUE_or_FULLTEXT_or_SPATIAL, :empty, val) + call(:r_opt_UNIQUE_or_FULLTEXT_or_SPATIAL, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 449) def _reduce_167(val, _values) - call(:r_opt_UNIQUE_or_FULLTEXT_or_SPATIAL, :UNIQUE, val) + call(:r_opt_UNIQUE_or_FULLTEXT_or_SPATIAL, :UNIQUE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 451) def _reduce_168(val, _values) - call(:r_opt_UNIQUE_or_FULLTEXT_or_SPATIAL, :FULLTEXT, val) + call(:r_opt_UNIQUE_or_FULLTEXT_or_SPATIAL, :FULLTEXT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 453) def _reduce_169(val, _values) - call(:r_opt_UNIQUE_or_FULLTEXT_or_SPATIAL, :SPATIAL, val) + call(:r_opt_UNIQUE_or_FULLTEXT_or_SPATIAL, :SPATIAL, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 456) def _reduce_170(val, _values) - call(:r_opt_index_option, :empty, val) + call(:r_opt_index_option, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 458) def _reduce_171(val, _values) - call(:r_opt_index_option, :index_option, val) + call(:r_opt_index_option, :index_option, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 466) def _reduce_172(val, _values) - call(:r_DROP_INDEX, nil, val) + call(:r_DROP_INDEX, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 473) def _reduce_173(val, _values) - call(:r_opt_datatype_number, :empty, val) + call(:r_opt_datatype_number, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 475) def _reduce_174(val, _values) - call(:r_opt_datatype_number, :int, val) + call(:r_opt_datatype_number, :int, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 477) def _reduce_175(val, _values) - call(:r_opt_datatype_number, :real, val) + call(:r_opt_datatype_number, :real, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 481) def _reduce_176(val, _values) - call(:r_opt_datatype_int, nil, val) + call(:r_opt_datatype_int, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 485) def _reduce_177(val, _values) - call(:r_opt_datatype_real, nil, val) + call(:r_opt_datatype_real, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 489) def _reduce_178(val, _values) - call(:r_opt_datatype_char, nil, val) + call(:r_opt_datatype_char, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 492) def _reduce_179(val, _values) - call(:r_opt_length_int, :empty, val) + call(:r_opt_length_int, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 494) def _reduce_180(val, _values) - call(:r_opt_length_int, :body, val) + call(:r_opt_length_int, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 497) def _reduce_181(val, _values) - call(:r_opt_length_real, :empty, val) + call(:r_opt_length_real, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 499) def _reduce_182(val, _values) - call(:r_opt_length_real, :body, val) + call(:r_opt_length_real, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 503) def _reduce_183(val, _values) - call(:r_length_int, nil, val) + call(:r_length_int, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 507) def _reduce_184(val, _values) - call(:r_length_real, nil, val) + call(:r_length_real, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 510) def _reduce_185(val, _values) - call(:r_opt_UNSIGNED, :empty, val) + call(:r_opt_UNSIGNED, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 512) def _reduce_186(val, _values) - call(:r_opt_UNSIGNED, :body, val) + call(:r_opt_UNSIGNED, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 515) def _reduce_187(val, _values) - call(:r_opt_ZEROFILL, :empty, val) + call(:r_opt_ZEROFILL, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 517) def _reduce_188(val, _values) - call(:r_opt_ZEROFILL, :body, val) + call(:r_opt_ZEROFILL, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 520) def _reduce_189(val, _values) - call(:r_opt_BINARY, :empty, val) + call(:r_opt_BINARY, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 522) def _reduce_190(val, _values) - call(:r_opt_BINARY, :body, val) + call(:r_opt_BINARY, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 526) def _reduce_191(val, _values) - call(:r_NULL_status, :NOT_NULL, val) + call(:r_NULL_status, :NOT_NULL, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 528) def _reduce_192(val, _values) - call(:r_NULL_status, :NULL, val) + call(:r_NULL_status, :NULL, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 532) def _reduce_193(val, _values) - call(:r_DEFAULT_with_val, :body, val) + call(:r_DEFAULT_with_val, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 536) def _reduce_194(val, _values) - call(:r_AUTO_INCREMENT, :body, val) + call(:r_AUTO_INCREMENT, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 540) def _reduce_195(val, _values) - call(:r_UNIQUE_or_PRIMARY, :UNIQUE, val) + call(:r_UNIQUE_or_PRIMARY, :UNIQUE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 542) def _reduce_196(val, _values) - call(:r_UNIQUE_or_PRIMARY, :UNIQUE_KEY, val) + call(:r_UNIQUE_or_PRIMARY, :UNIQUE_KEY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 544) def _reduce_197(val, _values) - call(:r_UNIQUE_or_PRIMARY, :PRIMARY, val) + call(:r_UNIQUE_or_PRIMARY, :PRIMARY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 546) def _reduce_198(val, _values) - call(:r_UNIQUE_or_PRIMARY, :PRIMARY_KEY, val) + call(:r_UNIQUE_or_PRIMARY, :PRIMARY_KEY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 550) def _reduce_199(val, _values) - call(:r_COMMENT_with_val, :body, val) + call(:r_COMMENT_with_val, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 554) def _reduce_200(val, _values) - call(:r_COLUMN_FORMAT, :FIXED, val) + call(:r_COLUMN_FORMAT, :FIXED, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 556) def _reduce_201(val, _values) - call(:r_COLUMN_FORMAT, :DYNAMIC, val) + call(:r_COLUMN_FORMAT, :DYNAMIC, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 558) def _reduce_202(val, _values) - call(:r_COLUMN_FORMAT, :DEFAULT, val) + call(:r_COLUMN_FORMAT, :DEFAULT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 562) def _reduce_203(val, _values) - call(:r_STORAGE, :DISK, val) + call(:r_STORAGE, :DISK, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 564) def _reduce_204(val, _values) - call(:r_STORAGE, :MEMORY, val) + call(:r_STORAGE, :MEMORY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 566) def _reduce_205(val, _values) - call(:r_STORAGE, :DEFAULT, val) + call(:r_STORAGE, :DEFAULT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 571) def _reduce_206(val, _values) - call(:r_REFERENCES_definition, :body, val) + call(:r_REFERENCES_definition, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 574) def _reduce_207(val, _values) - call(:r_opt_MATCH, :empty, val) + call(:r_opt_MATCH, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 576) def _reduce_208(val, _values) - call(:r_opt_MATCH, :FULL, val) + call(:r_opt_MATCH, :FULL, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 578) def _reduce_209(val, _values) - call(:r_opt_MATCH, :PARTIAL, val) + call(:r_opt_MATCH, :PARTIAL, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 580) def _reduce_210(val, _values) - call(:r_opt_MATCH, :SIMPLE, val) + call(:r_opt_MATCH, :SIMPLE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 583) def _reduce_211(val, _values) - call(:r_opt_ASC_or_DESC, :empty, val) + call(:r_opt_ASC_or_DESC, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 585) def _reduce_212(val, _values) - call(:r_opt_ASC_or_DESC, :ASC, val) + call(:r_opt_ASC_or_DESC, :ASC, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 587) def _reduce_213(val, _values) - call(:r_opt_ASC_or_DESC, :DESC, val) + call(:r_opt_ASC_or_DESC, :DESC, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 590) def _reduce_214(val, _values) - call(:r_opt_ON_DELETE_and_UPDATE, :empty, val) + call(:r_opt_ON_DELETE_and_UPDATE, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 592) def _reduce_215(val, _values) - call(:r_opt_ON_DELETE_and_UPDATE, :DELETE, val) + call(:r_opt_ON_DELETE_and_UPDATE, :DELETE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 595) def _reduce_216(val, _values) - call(:r_opt_ON_DELETE_and_UPDATE, :DELETE_UPDATE, val) + call(:r_opt_ON_DELETE_and_UPDATE, :DELETE_UPDATE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 597) def _reduce_217(val, _values) - call(:r_opt_ON_DELETE_and_UPDATE, :UPDATE, val) + call(:r_opt_ON_DELETE_and_UPDATE, :UPDATE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 601) def _reduce_218(val, _values) - call(:r_COLUMN_ON_UPDATE, :UPDATE, val) + call(:r_COLUMN_ON_UPDATE, :UPDATE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 605) def _reduce_219(val, _values) - call(:r_RESTRICT_or_CASCADE, :RESTRICT, val) + call(:r_RESTRICT_or_CASCADE, :RESTRICT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 607) def _reduce_220(val, _values) - call(:r_RESTRICT_or_CASCADE, :CASCADE, val) + call(:r_RESTRICT_or_CASCADE, :CASCADE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 611) def _reduce_221(val, _values) - call(:r_reference_option, :RESTRICT_or_CASCADE, val) + call(:r_reference_option, :RESTRICT_or_CASCADE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 613) def _reduce_222(val, _values) - call(:r_reference_option, :SET, val) + call(:r_reference_option, :SET, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 615) def _reduce_223(val, _values) - call(:r_reference_option, :NO_ACTION, val) + call(:r_reference_option, :NO_ACTION, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 618) def _reduce_224(val, _values) - call(:r_opt_TO_or_AS, :empty, val) + call(:r_opt_TO_or_AS, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 620) def _reduce_225(val, _values) - call(:r_opt_TO_or_AS, :AS, val) + call(:r_opt_TO_or_AS, :AS, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 622) def _reduce_226(val, _values) - call(:r_opt_TO_or_AS, :TO, val) + call(:r_opt_TO_or_AS, :TO, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 625) def _reduce_227(val, _values) - call(:r_opt_AS, :empty, val) + call(:r_opt_AS, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 627) def _reduce_228(val, _values) - call(:r_opt_AS, :AS, val) + call(:r_opt_AS, :AS, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 630) def _reduce_229(val, _values) - call(:r_opt_CHARACTER_SET_with_val, :empty, val) + call(:r_opt_CHARACTER_SET_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 632) def _reduce_230(val, _values) - call(:r_opt_CHARACTER_SET_with_val, :body, val) + call(:r_opt_CHARACTER_SET_with_val, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 635) def _reduce_231(val, _values) - call(:opt_COLLATE_with_val, :empty, val) + call(:opt_COLLATE_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 637) def _reduce_232(val, _values) - call(:opt_COLLATE_with_val, :body, val) + call(:opt_COLLATE_with_val, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 640) def _reduce_233(val, _values) - call(:r_opt_pos_column, :empty, val) + call(:r_opt_pos_column, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 642) def _reduce_234(val, _values) - call(:r_opt_pos_column, :FIRST, val) + call(:r_opt_pos_column, :FIRST, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 644) def _reduce_235(val, _values) - call(:r_opt_pos_column, :AFTER, val) + call(:r_opt_pos_column, :AFTER, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 648) def _reduce_236(val, _values) - call(:r_binary_or_DEFAULT, :DEFAULT, val) + call(:r_binary_or_DEFAULT, :DEFAULT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 650) def _reduce_237(val, _values) - call(:r_binary_or_DEFAULT, :binary, val) + call(:r_binary_or_DEFAULT, :binary, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 654) def _reduce_238(val, _values) - call(:r_NO_or_FIRST_or_LAST, :NO, val) + call(:r_NO_or_FIRST_or_LAST, :NO, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 656) def _reduce_239(val, _values) - call(:r_NO_or_FIRST_or_LAST, :FIRST, val) + call(:r_NO_or_FIRST_or_LAST, :FIRST, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 658) def _reduce_240(val, _values) - call(:r_NO_or_FIRST_or_LAST, :LAST, val) + call(:r_NO_or_FIRST_or_LAST, :LAST, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 661) def _reduce_241(val, _values) - call(:r_opt_STORAGE_option, :empty, val) + call(:r_opt_STORAGE_option, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 663) def _reduce_242(val, _values) - call(:r_opt_STORAGE_option, :DISK, val) + call(:r_opt_STORAGE_option, :DISK, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 665) def _reduce_243(val, _values) - call(:r_opt_STORAGE_option, :MEMORY, val) + call(:r_opt_STORAGE_option, :MEMORY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 667) def _reduce_244(val, _values) - call(:r_opt_STORAGE_option, :DEFAULT, val) + call(:r_opt_STORAGE_option, :DEFAULT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 670) def _reduce_245(val, _values) - call(:r_opt_DEFAULT, :empty, val) + call(:r_opt_DEFAULT, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 672) def _reduce_246(val, _values) - call(:r_opt_DEFAULT, :body, val) + call(:r_opt_DEFAULT, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 675) def _reduce_247(val, _values) - call(:r_opt_COMMENT_equal_with_val, :empty, val) + call(:r_opt_COMMENT_equal_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 677) def _reduce_248(val, _values) - call(:r_opt_COMMENT_equal_with_val, :body, val) + call(:r_opt_COMMENT_equal_with_val, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 681) def _reduce_249(val, _values) - call(:r_COMMENT_equal_with_val, nil, val) + call(:r_COMMENT_equal_with_val, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 685) def _reduce_250(val, _values) - call(:r_MAX_ROWS_equal_with_val, nil, val) + call(:r_MAX_ROWS_equal_with_val, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 689) def _reduce_251(val, _values) - call(:r_MIN_ROWS_equal_with_val, nil, val) + call(:r_MIN_ROWS_equal_with_val, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 694) def _reduce_252(val, _values) - call(:r_partition_definition, nil, val) + call(:r_partition_definition, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 697) def _reduce_253(val, _values) - call(:r_opt_partition_values, :empty, val) + call(:r_opt_partition_values, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 699) def _reduce_254(val, _values) - call(:r_opt_partition_values, :LESS_THAN_MAXVALUE, val) + call(:r_opt_partition_values, :LESS_THAN_MAXVALUE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 701) def _reduce_255(val, _values) - call(:r_opt_partition_values, :LESS_THAN_values, val) + call(:r_opt_partition_values, :LESS_THAN_values, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 703) def _reduce_256(val, _values) - call(:r_opt_partition_values, :IN_values, val) + call(:r_opt_partition_values, :IN_values, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 707) def _reduce_257(val, _values) - call(:r_ENGINE_equal_with_val, nil, val) + call(:r_ENGINE_equal_with_val, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 710) def _reduce_258(val, _values) - call(:r_opt_STORAGE_ENGINE_equal_with_val, :empty, val) + call(:r_opt_STORAGE_ENGINE_equal_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 712) def _reduce_259(val, _values) - call(:r_opt_STORAGE_ENGINE_equal_with_val, :STORAGE_ENGINE, val) + call(:r_opt_STORAGE_ENGINE_equal_with_val, :STORAGE_ENGINE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 714) def _reduce_260(val, _values) - call(:r_opt_STORAGE_ENGINE_equal_with_val, :ENGINE, val) + call(:r_opt_STORAGE_ENGINE_equal_with_val, :ENGINE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 717) def _reduce_261(val, _values) - call(:r_opt_DATA_DIRECTORY_equal_with_val, :empty, val) + call(:r_opt_DATA_DIRECTORY_equal_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 719) def _reduce_262(val, _values) - call(:r_opt_DATA_DIRECTORY_equal_with_val, :body, val) + call(:r_opt_DATA_DIRECTORY_equal_with_val, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 722) def _reduce_263(val, _values) - call(:r_opt_INDEX_DIRECTORY_equal_with_val, :empty, val) + call(:r_opt_INDEX_DIRECTORY_equal_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 724) def _reduce_264(val, _values) - call(:r_opt_INDEX_DIRECTORY_equal_with_val, :body, val) + call(:r_opt_INDEX_DIRECTORY_equal_with_val, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 727) def _reduce_265(val, _values) - call(:r_opt_MAX_ROWS_equal_with_val, :empty, val) + call(:r_opt_MAX_ROWS_equal_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 729) def _reduce_266(val, _values) - call(:r_opt_MAX_ROWS_equal_with_val, :body, val) + call(:r_opt_MAX_ROWS_equal_with_val, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 732) def _reduce_267(val, _values) - call(:r_opt_MIN_ROWS_equal_with_val, :empty, val) + call(:r_opt_MIN_ROWS_equal_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 734) def _reduce_268(val, _values) - call(:r_opt_MIN_ROWS_equal_with_val, :body, val) + call(:r_opt_MIN_ROWS_equal_with_val, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 737) def _reduce_269(val, _values) - call(:r_opt_TABLESPACE_equal_with_val, :empty, val) + call(:r_opt_TABLESPACE_equal_with_val, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 739) def _reduce_270(val, _values) - call(:r_opt_TABLESPACE_equal_with_val, :body, val) + call(:r_opt_TABLESPACE_equal_with_val, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 743) def _reduce_271(val, _values) - call(:r_subpartition_definition, nil, val) + call(:r_subpartition_definition, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 750) def _reduce_272(val, _values) - call(:r_partition_subpartition_share, nil, val) + call(:r_partition_subpartition_share, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 753) def _reduce_273(val, _values) - call(:r_opt_subpartition_definition_list, :empty, val) + call(:r_opt_subpartition_definition_list, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 755) def _reduce_274(val, _values) - call(:r_opt_subpartition_definition_list, :body, val) + call(:r_opt_subpartition_definition_list, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 758) def _reduce_275(val, _values) - call(:r_opt_partition_names_INTO_definitions, :empty, val) + call(:r_opt_partition_names_INTO_definitions, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 761) def _reduce_276(val, _values) - call(:r_opt_partition_names_INTO_definitions, :body, val) + call(:r_opt_partition_names_INTO_definitions, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 765) def _reduce_277(val, _values) - call(:r_partition_name_list_or_ALL, :ALL, val) + call(:r_partition_name_list_or_ALL, :ALL, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 767) def _reduce_278(val, _values) - call(:r_partition_name_list_or_ALL, :list, val) + call(:r_partition_name_list_or_ALL, :list, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 770) def _reduce_279(val, _values) - call(:r_opt_IGNORE_or_REPLACE, :empty, val) + call(:r_opt_IGNORE_or_REPLACE, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 772) def _reduce_280(val, _values) - call(:r_opt_IGNORE_or_REPLACE, :IGNORE, val) + call(:r_opt_IGNORE_or_REPLACE, :IGNORE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 774) def _reduce_281(val, _values) - call(:r_opt_IGNORE_or_REPLACE, :REPLACE, val) + call(:r_opt_IGNORE_or_REPLACE, :REPLACE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 782) def _reduce_282(val, _values) - call(:r_comma_separated_col_name, :base, val) + call(:r_comma_separated_col_name, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 784) def _reduce_283(val, _values) - call(:r_comma_separated_col_name, :inc, val) + call(:r_comma_separated_col_name, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 788) def _reduce_284(val, _values) - call(:r_comma_separated_tbl_name, :base, val) + call(:r_comma_separated_tbl_name, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 790) def _reduce_285(val, _values) - call(:r_comma_separated_tbl_name, :inc, val) + call(:r_comma_separated_tbl_name, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 794) def _reduce_286(val, _values) - call(:r_comma_separated_index_col_name, :base, val) + call(:r_comma_separated_index_col_name, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 796) def _reduce_287(val, _values) - call(:r_comma_separated_index_col_name, :inc, val) + call(:r_comma_separated_index_col_name, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 800) def _reduce_288(val, _values) - call(:r_comma_separated_add_col, :base, val) + call(:r_comma_separated_add_col, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 802) def _reduce_289(val, _values) - call(:r_comma_separated_add_col, :inc, val) + call(:r_comma_separated_add_col, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 806) def _reduce_290(val, _values) - call(:r_comma_separated_alter_specification, :base, val) + call(:r_comma_separated_alter_specification, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 808) def _reduce_291(val, _values) - call(:r_comma_separated_alter_specification, :inc, val) + call(:r_comma_separated_alter_specification, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 812) def _reduce_292(val, _values) - call(:r_comma_separated_partition_name, :base, val) + call(:r_comma_separated_partition_name, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 814) def _reduce_293(val, _values) - call(:r_comma_separated_partition_name, :inc, val) + call(:r_comma_separated_partition_name, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 818) def _reduce_294(val, _values) - call(:r_comma_separated_subpartition_definition, :base, val) + call(:r_comma_separated_subpartition_definition, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 820) def _reduce_295(val, _values) - call(:r_comma_separated_subpartition_definition, :inc, val) + call(:r_comma_separated_subpartition_definition, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 824) def _reduce_296(val, _values) - call(:r_comma_separated_partition_definition, :base, val) + call(:r_comma_separated_partition_definition, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 826) def _reduce_297(val, _values) - call(:r_comma_separated_partition_definition, :inc, val) + call(:r_comma_separated_partition_definition, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 830) def _reduce_298(val, _values) - call(:r_space_separated_alter_table_option, :base, val) + call(:r_space_separated_alter_table_option, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 832) def _reduce_299(val, _values) - call(:r_space_separated_alter_table_option, :inc, val) + call(:r_space_separated_alter_table_option, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 837) def _reduce_300(val, _values) - call(:r_comma_separated_view_name, :base, val) + call(:r_comma_separated_view_name, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 839) def _reduce_301(val, _values) - call(:r_comma_separated_view_name, :inc, val) + call(:r_comma_separated_view_name, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 842) def _reduce_302(val, _values) - call(:r_opt_space_separated_index_option, :base, val) + call(:r_opt_space_separated_index_option, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 844) def _reduce_303(val, _values) - call(:r_opt_space_separated_index_option, :inc, val) + call(:r_opt_space_separated_index_option, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 848) def _reduce_304(val, _values) - call(:r_comma_separated_integer, :base, val) + call(:r_comma_separated_integer, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 850) def _reduce_305(val, _values) - call(:r_comma_separated_integer, :inc, val) + call(:r_comma_separated_integer, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 854) def _reduce_306(val, _values) - call(:r_comma_separated_create_definition, :base, val) + call(:r_comma_separated_create_definition, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 856) def _reduce_307(val, _values) - call(:r_comma_separated_create_definition, :inc, val) + call(:r_comma_separated_create_definition, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 860) def _reduce_308(val, _values) - call(:r_space_or_comma_separated_table_option, :base, val) + call(:r_space_or_comma_separated_table_option, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 863) def _reduce_309(val, _values) - call(:r_space_or_comma_separated_table_option, :inc, val) + call(:r_space_or_comma_separated_table_option, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 867) def _reduce_310(val, _values) - call(:r_comma_separated_string, :base, val) + call(:r_comma_separated_string, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 869) def _reduce_311(val, _values) - call(:r_comma_separated_string, :inc, val) + call(:r_comma_separated_string, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 873) def _reduce_312(val, _values) - call(:r_space_separated_column_attribute, :base, val) + call(:r_space_separated_column_attribute, :base, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 875) def _reduce_313(val, _values) - call(:r_space_separated_column_attribute, :inc, val) + call(:r_space_separated_column_attribute, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 883) def _reduce_314(val, _values) - call(:r_index_col_name, nil, val) + call(:r_index_col_name, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 885) def _reduce_315(val, _values) - call(:r_view_name, nil, val) + call(:r_view_name, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 886) def _reduce_316(val, _values) - call(:r_partition_name, nil, val) + call(:r_partition_name, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 887) def _reduce_317(val, _values) - call(:r_logical_name, nil, val) + call(:r_logical_name, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 888) def _reduce_318(val, _values) - call(:r_parser_name, nil, val) + call(:r_parser_name, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 889) def _reduce_319(val, _values) - call(:r_index_name, nil, val) + call(:r_index_name, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 890) def _reduce_320(val, _values) - call(:r_tablespace_name, nil, val) + call(:r_tablespace_name, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 891) def _reduce_321(val, _values) - call(:r_collation_name, nil, val) + call(:r_collation_name, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 892) def _reduce_322(val, _values) - call(:r_col_name, nil, val) + call(:r_col_name, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 893) def _reduce_323(val, _values) - call(:r_tbl_name, nil, val) + call(:r_tbl_name, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 897) def _reduce_324(val, _values) - call(:r_tbl_name_int, :without_dot, val) + call(:r_tbl_name_int, :without_dot, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 899) def _reduce_325(val, _values) - call(:r_tbl_name_int, :with_database, val) + call(:r_tbl_name_int, :with_database, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 901) def _reduce_326(val, _values) - call(:r_tbl_name_int, :with_dot, val) + call(:r_tbl_name_int, :with_dot, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 905) def _reduce_327(val, _values) - call(:r_user_name, :without_at, val) + call(:r_user_name, :without_at, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 907) def _reduce_328(val, _values) - call(:r_user_name, :with_at, val) + call(:r_user_name, :with_at, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 910) def _reduce_329(val, _values) - call(:r_user_name_part, :string, val) + call(:r_user_name_part, :string, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 911) def _reduce_330(val, _values) - call(:r_user_name_part, :ident, val) + call(:r_user_name_part, :ident, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 913) def _reduce_331(val, _values) - call(:r_fk_symbol, nil, val) + call(:r_fk_symbol, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 916) def _reduce_332(val, _values) - call(:r_ENGINE_name, :INNODB, val) + call(:r_ENGINE_name, :INNODB, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 917) def _reduce_333(val, _values) - call(:r_ENGINE_name, :other, val) + call(:r_ENGINE_name, :other, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 920) def _reduce_334(val, _values) - call(:r_charset_name, :LATIN1, val) + call(:r_charset_name, :LATIN1, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 921) def _reduce_335(val, _values) - call(:r_charset_name, :UTF8, val) + call(:r_charset_name, :UTF8, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 922) def _reduce_336(val, _values) - call(:r_charset_name, :UTF8MB4, val) + call(:r_charset_name, :UTF8MB4, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 923) def _reduce_337(val, _values) - call(:r_charset_name, :UTF8MB3, val) + call(:r_charset_name, :UTF8MB3, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 924) def _reduce_338(val, _values) - call(:r_charset_name, :other, val) + call(:r_charset_name, :other, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 929) def _reduce_339(val, _values) - call(:r_datatype, :BIT, val) + call(:r_datatype, :BIT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 931) def _reduce_340(val, _values) - call(:r_datatype, :TINYINT, val) + call(:r_datatype, :TINYINT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 933) def _reduce_341(val, _values) - call(:r_datatype, :SMALLINT, val) + call(:r_datatype, :SMALLINT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 935) def _reduce_342(val, _values) - call(:r_datatype, :MEDIUMINT, val) + call(:r_datatype, :MEDIUMINT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 937) def _reduce_343(val, _values) - call(:r_datatype, :INT, val) + call(:r_datatype, :INT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 939) def _reduce_344(val, _values) - call(:r_datatype, :INTEGER, val) + call(:r_datatype, :INTEGER, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 941) def _reduce_345(val, _values) - call(:r_datatype, :BIGINT, val) + call(:r_datatype, :BIGINT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 943) def _reduce_346(val, _values) - call(:r_datatype, :REAL, val) + call(:r_datatype, :REAL, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 945) def _reduce_347(val, _values) - call(:r_datatype, :DOUBLE, val) + call(:r_datatype, :DOUBLE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 947) def _reduce_348(val, _values) - call(:r_datatype, :FLOAT, val) + call(:r_datatype, :FLOAT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 949) def _reduce_349(val, _values) - call(:r_datatype, :DECIMAL, val) + call(:r_datatype, :DECIMAL, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 951) def _reduce_350(val, _values) - call(:r_datatype, :NUMERIC, val) + call(:r_datatype, :NUMERIC, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 953) def _reduce_351(val, _values) - call(:r_datatype, :DATE, val) + call(:r_datatype, :DATE, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 955) def _reduce_352(val, _values) - call(:r_datatype, :TIME, val) + call(:r_datatype, :TIME, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 957) def _reduce_353(val, _values) - call(:r_datatype, :TIMESTAMP, val) + call(:r_datatype, :TIMESTAMP, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 959) def _reduce_354(val, _values) - call(:r_datatype, :DATETIME, val) + call(:r_datatype, :DATETIME, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 961) def _reduce_355(val, _values) - call(:r_datatype, :YEAR, val) + call(:r_datatype, :YEAR, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 963) def _reduce_356(val, _values) - call(:r_datatype, :CHAR, val) + call(:r_datatype, :CHAR, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 965) def _reduce_357(val, _values) - call(:r_datatype, :VARCHAR, val) + call(:r_datatype, :VARCHAR, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 967) def _reduce_358(val, _values) - call(:r_datatype, :BINARY, val) + call(:r_datatype, :BINARY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 969) def _reduce_359(val, _values) - call(:r_datatype, :VARBINARY, val) + call(:r_datatype, :VARBINARY, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 971) def _reduce_360(val, _values) - call(:r_datatype, :TINYBLOB, val) + call(:r_datatype, :TINYBLOB, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 973) def _reduce_361(val, _values) - call(:r_datatype, :BLOB, val) + call(:r_datatype, :BLOB, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 975) def _reduce_362(val, _values) - call(:r_datatype, :MEDIUMBLOB, val) + call(:r_datatype, :MEDIUMBLOB, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 977) def _reduce_363(val, _values) - call(:r_datatype, :LONGBLOB, val) + call(:r_datatype, :LONGBLOB, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 979) def _reduce_364(val, _values) - call(:r_datatype, :TINYTEXT, val) + call(:r_datatype, :TINYTEXT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 981) def _reduce_365(val, _values) - call(:r_datatype, :TEXT, val) + call(:r_datatype, :TEXT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 983) def _reduce_366(val, _values) - call(:r_datatype, :MEDIUMTEXT, val) + call(:r_datatype, :MEDIUMTEXT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 985) def _reduce_367(val, _values) - call(:r_datatype, :LONGTEXT, val) + call(:r_datatype, :LONGTEXT, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 988) def _reduce_368(val, _values) - call(:r_datatype, :SET, val) + call(:r_datatype, :SET, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 991) def _reduce_369(val, _values) - call(:r_datatype, :ENUM, val) + call(:r_datatype, :ENUM, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 993) def _reduce_370(val, _values) - call(:r_datatype, :spatial, val) + call(:r_datatype, :spatial, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 999) def _reduce_371(val, _values) - call(:expr, nil, val) + call(:expr, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1002) def _reduce_372(val, _values) - call(:opt_comma, :empty, val) + call(:opt_comma, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1004) def _reduce_373(val, _values) - call(:opt_comma, :body, val) + call(:opt_comma, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1006) def _reduce_374(val, _values) - call(:comma, nil, val) + call(:comma, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1009) def _reduce_375(val, _values) - call(:opt_equal, :empty, val) + call(:opt_equal, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1011) def _reduce_376(val, _values) - call(:opt_equal, :body, val) + call(:opt_equal, :body, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1013) def _reduce_377(val, _values) - call(:equal, nil, val) + call(:equal, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1015) def _reduce_378(val, _values) - call(:left_paren, nil, val) + call(:left_paren, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1016) def _reduce_379(val, _values) - call(:right_paren, nil, val) + call(:right_paren, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1018) def _reduce_380(val, _values) - call(:symbol, nil, val) + call(:symbol, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1020) def _reduce_381(val, _values) - call(:literal, nil, val) + call(:literal, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1023) def _reduce_382(val, _values) - call(:value, :literal, val) + call(:value, :literal, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1024) def _reduce_383(val, _values) - call(:value, :number, val) + call(:value, :number, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1025) def _reduce_384(val, _values) - call(:value, :string, val) + call(:value, :string, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1026) def _reduce_385(val, _values) - call(:value, :CURRENT_TIMESTAMP, val) + call(:value, :current_timestamp, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1037) def _reduce_386(val, _values) - call(:string, :single, val) + call(:string, :single, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1039) def _reduce_387(val, _values) - call(:string, :double, val) + call(:string, :double, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1042) def _reduce_388(val, _values) - call(:opt_string_in_quote, :empty, val) + call(:opt_string_in_quote, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1044) def _reduce_389(val, _values) - call(:opt_string_in_quote, :inc, val) + call(:opt_string_in_quote, :inc, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1047) def _reduce_390(val, _values) - call(:number, :integer, val) + call(:number, :integer, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1048) def _reduce_391(val, _values) - call(:number, :float, val) + call(:number, :float, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1050) def _reduce_392(val, _values) - call(:float, nil, val) + call(:float, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1053) def _reduce_393(val, _values) - call(:binary, :zero, val) + call(:binary, :zero, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1054) def _reduce_394(val, _values) - call(:binary, :one, val) + call(:binary, :one, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1057) def _reduce_395(val, _values) - call(:integer, :nat, val) + call(:integer, :nat, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1058) def _reduce_396(val, _values) - call(:integer, :neg, val) + call(:integer, :neg, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1061) def _reduce_397(val, _values) - call(:negative_integer, :one, val) + call(:current_timestamp, :CURRENT_TIMESTAMP, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1062) def _reduce_398(val, _values) - call(:negative_integer, :rest, val) + call(:current_timestamp, :CURRENT_TIMESTAMP, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1065) def _reduce_399(val, _values) - call(:nat, :not_binary, val) + call(:negative_integer, :one, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1067) +module_eval(<<'.,.,', 'mysql.y.rb', 1066) def _reduce_400(val, _values) - call(:nat, :binary, val) + call(:negative_integer, :rest, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1069) def _reduce_401(val, _values) - call(:null, nil, val) + call(:nat, :not_binary, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1073) +module_eval(<<'.,.,', 'mysql.y.rb', 1071) def _reduce_402(val, _values) - call(:ident, :without_backtick, val) + call(:nat, :binary, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1075) +module_eval(<<'.,.,', 'mysql.y.rb', 1073) def _reduce_403(val, _values) - call(:ident, :with_backtick, val) + call(:null, nil, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1078) +module_eval(<<'.,.,', 'mysql.y.rb', 1077) def _reduce_404(val, _values) - call(:opt_ident_in_backtick, :empty, val) + call(:ident, :without_backtick, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1080) +module_eval(<<'.,.,', 'mysql.y.rb', 1079) def _reduce_405(val, _values) - call(:opt_ident_in_backtick, :inc, val) + call(:ident, :with_backtick, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1082) def _reduce_406(val, _values) - call(:raw_ident, nil, val) + call(:opt_ident_in_backtick, :empty, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1084) def _reduce_407(val, _values) - call(:S, nil, val) + call(:opt_ident_in_backtick, :inc, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1087) +module_eval(<<'.,.,', 'mysql.y.rb', 1086) def _reduce_408(val, _values) - call(:star, :base, val) + call(:raw_ident, nil, val) end .,., module_eval(<<'.,.,', 'mysql.y.rb', 1088) def _reduce_409(val, _values) - call(:star, :inc, val) + call(:S, nil, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1096) +module_eval(<<'.,.,', 'mysql.y.rb', 1091) def _reduce_410(val, _values) - call(:dot, :ZEROFILL, val) + call(:star, :base, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1097) +module_eval(<<'.,.,', 'mysql.y.rb', 1092) def _reduce_411(val, _values) - call(:dot, :YEAR, val) + call(:star, :inc, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1098) +module_eval(<<'.,.,', 'mysql.y.rb', 1100) def _reduce_412(val, _values) - call(:dot, :WITH, val) + call(:dot, :ZEROFILL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1099) +module_eval(<<'.,.,', 'mysql.y.rb', 1101) def _reduce_413(val, _values) - call(:dot, :VIEW, val) + call(:dot, :YEAR, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1100) +module_eval(<<'.,.,', 'mysql.y.rb', 1102) def _reduce_414(val, _values) - call(:dot, :VARCHAR, val) + call(:dot, :WITH, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1101) +module_eval(<<'.,.,', 'mysql.y.rb', 1103) def _reduce_415(val, _values) - call(:dot, :VARBINARY, val) + call(:dot, :VIEW, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1102) +module_eval(<<'.,.,', 'mysql.y.rb', 1104) def _reduce_416(val, _values) - call(:dot, :VALUES, val) + call(:dot, :VARCHAR, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1103) +module_eval(<<'.,.,', 'mysql.y.rb', 1105) def _reduce_417(val, _values) - call(:dot, :UTF8MB4, val) + call(:dot, :VARBINARY, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1104) +module_eval(<<'.,.,', 'mysql.y.rb', 1106) def _reduce_418(val, _values) - call(:dot, :UTF8MB3, val) + call(:dot, :VALUES, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1105) +module_eval(<<'.,.,', 'mysql.y.rb', 1107) def _reduce_419(val, _values) - call(:dot, :UTF8, val) + call(:dot, :UTF8MB4, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1106) +module_eval(<<'.,.,', 'mysql.y.rb', 1108) def _reduce_420(val, _values) - call(:dot, :USING, val) + call(:dot, :UTF8MB3, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1107) +module_eval(<<'.,.,', 'mysql.y.rb', 1109) def _reduce_421(val, _values) - call(:dot, :UPDATE, val) + call(:dot, :UTF8, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1108) +module_eval(<<'.,.,', 'mysql.y.rb', 1110) def _reduce_422(val, _values) - call(:dot, :UNSIGNED, val) + call(:dot, :USING, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1109) +module_eval(<<'.,.,', 'mysql.y.rb', 1111) def _reduce_423(val, _values) - call(:dot, :UNIQUE, val) + call(:dot, :UPDATE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1110) +module_eval(<<'.,.,', 'mysql.y.rb', 1112) def _reduce_424(val, _values) - call(:dot, :UNION, val) + call(:dot, :UNSIGNED, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1111) +module_eval(<<'.,.,', 'mysql.y.rb', 1113) def _reduce_425(val, _values) - call(:dot, :UNDEFINED, val) + call(:dot, :UNIQUE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1112) +module_eval(<<'.,.,', 'mysql.y.rb', 1114) def _reduce_426(val, _values) - call(:dot, :TRUNCATE, val) + call(:dot, :UNION, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1113) +module_eval(<<'.,.,', 'mysql.y.rb', 1115) def _reduce_427(val, _values) - call(:dot, :TO, val) + call(:dot, :UNDEFINED, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1114) +module_eval(<<'.,.,', 'mysql.y.rb', 1116) def _reduce_428(val, _values) - call(:dot, :TINYTEXT, val) + call(:dot, :TRUNCATE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1115) +module_eval(<<'.,.,', 'mysql.y.rb', 1117) def _reduce_429(val, _values) - call(:dot, :TINYINT, val) + call(:dot, :TO, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1116) +module_eval(<<'.,.,', 'mysql.y.rb', 1118) def _reduce_430(val, _values) - call(:dot, :TINYBLOB, val) + call(:dot, :TINYTEXT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1117) +module_eval(<<'.,.,', 'mysql.y.rb', 1119) def _reduce_431(val, _values) - call(:dot, :TIMESTAMP, val) + call(:dot, :TINYINT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1118) +module_eval(<<'.,.,', 'mysql.y.rb', 1120) def _reduce_432(val, _values) - call(:dot, :TIME, val) + call(:dot, :TINYBLOB, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1119) +module_eval(<<'.,.,', 'mysql.y.rb', 1121) def _reduce_433(val, _values) - call(:dot, :THAN, val) + call(:dot, :TIMESTAMP, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1120) +module_eval(<<'.,.,', 'mysql.y.rb', 1122) def _reduce_434(val, _values) - call(:dot, :TEXT, val) + call(:dot, :TIME, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1121) +module_eval(<<'.,.,', 'mysql.y.rb', 1123) def _reduce_435(val, _values) - call(:dot, :TEMPTABLE, val) + call(:dot, :THAN, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1122) +module_eval(<<'.,.,', 'mysql.y.rb', 1124) def _reduce_436(val, _values) - call(:dot, :TEMPORARY, val) + call(:dot, :TEXT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1123) +module_eval(<<'.,.,', 'mysql.y.rb', 1125) def _reduce_437(val, _values) - call(:dot, :TABLESPACE, val) + call(:dot, :TEMPTABLE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1124) +module_eval(<<'.,.,', 'mysql.y.rb', 1126) def _reduce_438(val, _values) - call(:dot, :TABLE, val) + call(:dot, :TEMPORARY, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1125) +module_eval(<<'.,.,', 'mysql.y.rb', 1127) def _reduce_439(val, _values) - call(:dot, :S_ZERO, val) + call(:dot, :TABLESPACE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1126) +module_eval(<<'.,.,', 'mysql.y.rb', 1128) def _reduce_440(val, _values) - call(:dot, :S_STRING_IN_SINGLEQUOTE, val) + call(:dot, :TABLE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1127) +module_eval(<<'.,.,', 'mysql.y.rb', 1129) def _reduce_441(val, _values) - call(:dot, :S_STRING_IN_QUOTE, val) + call(:dot, :S_ZERO, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1128) +module_eval(<<'.,.,', 'mysql.y.rb', 1130) def _reduce_442(val, _values) - call(:dot, :S_SPACE, val) + call(:dot, :S_STRING_IN_SINGLEQUOTE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1129) +module_eval(<<'.,.,', 'mysql.y.rb', 1131) def _reduce_443(val, _values) - call(:dot, :S_SINGLEQUOTE_OUT, val) + call(:dot, :S_STRING_IN_QUOTE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1130) +module_eval(<<'.,.,', 'mysql.y.rb', 1132) def _reduce_444(val, _values) - call(:dot, :S_SINGLEQUOTE_IN, val) + call(:dot, :S_SPACE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1131) +module_eval(<<'.,.,', 'mysql.y.rb', 1133) def _reduce_445(val, _values) - call(:dot, :S_RIGHT_PAREN, val) + call(:dot, :S_SINGLEQUOTE_OUT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1132) +module_eval(<<'.,.,', 'mysql.y.rb', 1134) def _reduce_446(val, _values) - call(:dot, :S_ONE, val) + call(:dot, :S_SINGLEQUOTE_IN, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1133) +module_eval(<<'.,.,', 'mysql.y.rb', 1135) def _reduce_447(val, _values) - call(:dot, :S_NAT, val) + call(:dot, :S_RIGHT_PAREN, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1134) +module_eval(<<'.,.,', 'mysql.y.rb', 1136) def _reduce_448(val, _values) - call(:dot, :S_MINUS, val) + call(:dot, :S_ONE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1135) +module_eval(<<'.,.,', 'mysql.y.rb', 1137) def _reduce_449(val, _values) - call(:dot, :S_LEFT_PAREN, val) + call(:dot, :S_NAT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1136) +module_eval(<<'.,.,', 'mysql.y.rb', 1138) def _reduce_450(val, _values) - call(:dot, :S_IDENT_NORMAL, val) + call(:dot, :S_MINUS, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1137) +module_eval(<<'.,.,', 'mysql.y.rb', 1139) def _reduce_451(val, _values) - call(:dot, :S_IDENT_IN_BACKTICK, val) + call(:dot, :S_LEFT_PAREN, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1138) +module_eval(<<'.,.,', 'mysql.y.rb', 1140) def _reduce_452(val, _values) - call(:dot, :S_FLOAT, val) + call(:dot, :S_IDENT_NORMAL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1139) +module_eval(<<'.,.,', 'mysql.y.rb', 1141) def _reduce_453(val, _values) - call(:dot, :S_EQUAL, val) + call(:dot, :S_IDENT_IN_BACKTICK, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1140) +module_eval(<<'.,.,', 'mysql.y.rb', 1142) def _reduce_454(val, _values) - call(:dot, :S_DOUBLEQUOTE_OUT, val) + call(:dot, :S_FLOAT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1141) +module_eval(<<'.,.,', 'mysql.y.rb', 1143) def _reduce_455(val, _values) - call(:dot, :S_DOUBLEQUOTE_IN, val) + call(:dot, :S_EQUAL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1142) +module_eval(<<'.,.,', 'mysql.y.rb', 1144) def _reduce_456(val, _values) - call(:dot, :S_DOT, val) + call(:dot, :S_DOUBLEQUOTE_OUT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1143) +module_eval(<<'.,.,', 'mysql.y.rb', 1145) def _reduce_457(val, _values) - call(:dot, :S_COMMA, val) + call(:dot, :S_DOUBLEQUOTE_IN, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1144) +module_eval(<<'.,.,', 'mysql.y.rb', 1146) def _reduce_458(val, _values) - call(:dot, :S_BACKTICK_OUT, val) + call(:dot, :S_DOT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1145) +module_eval(<<'.,.,', 'mysql.y.rb', 1147) def _reduce_459(val, _values) - call(:dot, :S_BACKTICK_IN, val) + call(:dot, :S_COMMA, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1146) +module_eval(<<'.,.,', 'mysql.y.rb', 1148) def _reduce_460(val, _values) - call(:dot, :S_AT, val) + call(:dot, :S_BACKTICK_OUT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1147) +module_eval(<<'.,.,', 'mysql.y.rb', 1149) def _reduce_461(val, _values) - call(:dot, :SUBPARTITION, val) + call(:dot, :S_BACKTICK_IN, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1148) +module_eval(<<'.,.,', 'mysql.y.rb', 1150) def _reduce_462(val, _values) - call(:dot, :STORAGE, val) + call(:dot, :S_AT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1149) +module_eval(<<'.,.,', 'mysql.y.rb', 1151) def _reduce_463(val, _values) - call(:dot, :SQL, val) + call(:dot, :SUBPARTITION, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1150) +module_eval(<<'.,.,', 'mysql.y.rb', 1152) def _reduce_464(val, _values) - call(:dot, :SPATIAL, val) + call(:dot, :STORAGE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1151) +module_eval(<<'.,.,', 'mysql.y.rb', 1153) def _reduce_465(val, _values) - call(:dot, :SMALLINT, val) + call(:dot, :SQL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1152) +module_eval(<<'.,.,', 'mysql.y.rb', 1154) def _reduce_466(val, _values) - call(:dot, :SIMPLE, val) + call(:dot, :SPATIAL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1153) +module_eval(<<'.,.,', 'mysql.y.rb', 1155) def _reduce_467(val, _values) - call(:dot, :SET, val) + call(:dot, :SMALLINT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1154) +module_eval(<<'.,.,', 'mysql.y.rb', 1156) def _reduce_468(val, _values) - call(:dot, :SELECT, val) + call(:dot, :SIMPLE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1155) +module_eval(<<'.,.,', 'mysql.y.rb', 1157) def _reduce_469(val, _values) - call(:dot, :SECURITY, val) + call(:dot, :SET, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1156) +module_eval(<<'.,.,', 'mysql.y.rb', 1158) def _reduce_470(val, _values) - call(:dot, :ROW_FORMAT, val) + call(:dot, :SELECT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1157) +module_eval(<<'.,.,', 'mysql.y.rb', 1159) def _reduce_471(val, _values) - call(:dot, :RESTRICT, val) + call(:dot, :SECURITY, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1158) +module_eval(<<'.,.,', 'mysql.y.rb', 1160) def _reduce_472(val, _values) - call(:dot, :REPLACE, val) + call(:dot, :ROW_FORMAT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1159) +module_eval(<<'.,.,', 'mysql.y.rb', 1161) def _reduce_473(val, _values) - call(:dot, :REPAIR, val) + call(:dot, :RESTRICT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1160) +module_eval(<<'.,.,', 'mysql.y.rb', 1162) def _reduce_474(val, _values) - call(:dot, :REORGANIZE, val) + call(:dot, :REPLACE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1161) +module_eval(<<'.,.,', 'mysql.y.rb', 1163) def _reduce_475(val, _values) - call(:dot, :RENAME, val) + call(:dot, :REPAIR, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1162) +module_eval(<<'.,.,', 'mysql.y.rb', 1164) def _reduce_476(val, _values) - call(:dot, :REMOVE, val) + call(:dot, :REORGANIZE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1163) +module_eval(<<'.,.,', 'mysql.y.rb', 1165) def _reduce_477(val, _values) - call(:dot, :REFERENCES, val) + call(:dot, :RENAME, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1164) +module_eval(<<'.,.,', 'mysql.y.rb', 1166) def _reduce_478(val, _values) - call(:dot, :REDUNDANT, val) + call(:dot, :REMOVE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1165) +module_eval(<<'.,.,', 'mysql.y.rb', 1167) def _reduce_479(val, _values) - call(:dot, :REBUILD, val) + call(:dot, :REFERENCES, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1166) +module_eval(<<'.,.,', 'mysql.y.rb', 1168) def _reduce_480(val, _values) - call(:dot, :REAL, val) + call(:dot, :REDUNDANT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1167) +module_eval(<<'.,.,', 'mysql.y.rb', 1169) def _reduce_481(val, _values) - call(:dot, :PRIMARY, val) + call(:dot, :REBUILD, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1168) +module_eval(<<'.,.,', 'mysql.y.rb', 1170) def _reduce_482(val, _values) - call(:dot, :PASSWORD, val) + call(:dot, :REAL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1169) +module_eval(<<'.,.,', 'mysql.y.rb', 1171) def _reduce_483(val, _values) - call(:dot, :PARTITIONING, val) + call(:dot, :PRIMARY, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1170) +module_eval(<<'.,.,', 'mysql.y.rb', 1172) def _reduce_484(val, _values) - call(:dot, :PARTITION, val) + call(:dot, :PASSWORD, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1171) +module_eval(<<'.,.,', 'mysql.y.rb', 1173) def _reduce_485(val, _values) - call(:dot, :PARTIAL, val) + call(:dot, :PARTITIONING, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1172) +module_eval(<<'.,.,', 'mysql.y.rb', 1174) def _reduce_486(val, _values) - call(:dot, :PARSER, val) + call(:dot, :PARTITION, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1173) +module_eval(<<'.,.,', 'mysql.y.rb', 1175) def _reduce_487(val, _values) - call(:dot, :PACK_KEYS, val) + call(:dot, :PARTIAL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1174) +module_eval(<<'.,.,', 'mysql.y.rb', 1176) def _reduce_488(val, _values) - call(:dot, :ORDER, val) + call(:dot, :PARSER, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1175) +module_eval(<<'.,.,', 'mysql.y.rb', 1177) def _reduce_489(val, _values) - call(:dot, :OR, val) + call(:dot, :PACK_KEYS, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1176) +module_eval(<<'.,.,', 'mysql.y.rb', 1178) def _reduce_490(val, _values) - call(:dot, :OPTION, val) + call(:dot, :ORDER, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1177) +module_eval(<<'.,.,', 'mysql.y.rb', 1179) def _reduce_491(val, _values) - call(:dot, :OPTIMIZE, val) + call(:dot, :OR, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1178) +module_eval(<<'.,.,', 'mysql.y.rb', 1180) def _reduce_492(val, _values) - call(:dot, :ONLINE, val) + call(:dot, :OPTION, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1179) +module_eval(<<'.,.,', 'mysql.y.rb', 1181) def _reduce_493(val, _values) - call(:dot, :ON, val) + call(:dot, :OPTIMIZE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1180) +module_eval(<<'.,.,', 'mysql.y.rb', 1182) def _reduce_494(val, _values) - call(:dot, :OFFLINE, val) + call(:dot, :ONLINE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1181) +module_eval(<<'.,.,', 'mysql.y.rb', 1183) def _reduce_495(val, _values) - call(:dot, :NUMERIC, val) + call(:dot, :ON, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1182) +module_eval(<<'.,.,', 'mysql.y.rb', 1184) def _reduce_496(val, _values) - call(:dot, :NULL, val) + call(:dot, :OFFLINE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1183) +module_eval(<<'.,.,', 'mysql.y.rb', 1185) def _reduce_497(val, _values) - call(:dot, :NOT, val) + call(:dot, :NUMERIC, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1184) +module_eval(<<'.,.,', 'mysql.y.rb', 1186) def _reduce_498(val, _values) - call(:dot, :NODEGROUP, val) + call(:dot, :NULL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1185) +module_eval(<<'.,.,', 'mysql.y.rb', 1187) def _reduce_499(val, _values) - call(:dot, :NO, val) + call(:dot, :NOT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1186) +module_eval(<<'.,.,', 'mysql.y.rb', 1188) def _reduce_500(val, _values) - call(:dot, :MODIFY, val) + call(:dot, :NODEGROUP, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1187) +module_eval(<<'.,.,', 'mysql.y.rb', 1189) def _reduce_501(val, _values) - call(:dot, :MIN_ROWS, val) + call(:dot, :NO, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1188) +module_eval(<<'.,.,', 'mysql.y.rb', 1190) def _reduce_502(val, _values) - call(:dot, :MERGE, val) + call(:dot, :MODIFY, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1189) +module_eval(<<'.,.,', 'mysql.y.rb', 1191) def _reduce_503(val, _values) - call(:dot, :MEMORY, val) + call(:dot, :MIN_ROWS, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1190) +module_eval(<<'.,.,', 'mysql.y.rb', 1192) def _reduce_504(val, _values) - call(:dot, :MEDIUMTEXT, val) + call(:dot, :MERGE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1191) +module_eval(<<'.,.,', 'mysql.y.rb', 1193) def _reduce_505(val, _values) - call(:dot, :MEDIUMINT, val) + call(:dot, :MEMORY, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1192) +module_eval(<<'.,.,', 'mysql.y.rb', 1194) def _reduce_506(val, _values) - call(:dot, :MEDIUMBLOB, val) + call(:dot, :MEDIUMTEXT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1193) +module_eval(<<'.,.,', 'mysql.y.rb', 1195) def _reduce_507(val, _values) - call(:dot, :MAX_ROWS, val) + call(:dot, :MEDIUMINT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1194) +module_eval(<<'.,.,', 'mysql.y.rb', 1196) def _reduce_508(val, _values) - call(:dot, :MAXVALUE, val) + call(:dot, :MEDIUMBLOB, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1195) +module_eval(<<'.,.,', 'mysql.y.rb', 1197) def _reduce_509(val, _values) - call(:dot, :MATCH, val) + call(:dot, :MAX_ROWS, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1196) +module_eval(<<'.,.,', 'mysql.y.rb', 1198) def _reduce_510(val, _values) - call(:dot, :L_CHARACTER_SET, val) + call(:dot, :MAXVALUE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1197) +module_eval(<<'.,.,', 'mysql.y.rb', 1199) def _reduce_511(val, _values) - call(:dot, :LONGTEXT, val) + call(:dot, :MATCH, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1198) +module_eval(<<'.,.,', 'mysql.y.rb', 1200) def _reduce_512(val, _values) - call(:dot, :LONGBLOB, val) + call(:dot, :L_CHARACTER_SET, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1199) +module_eval(<<'.,.,', 'mysql.y.rb', 1201) def _reduce_513(val, _values) - call(:dot, :LOCAL, val) + call(:dot, :LONGTEXT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1200) +module_eval(<<'.,.,', 'mysql.y.rb', 1202) def _reduce_514(val, _values) - call(:dot, :LIKE, val) + call(:dot, :LONGBLOB, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1201) +module_eval(<<'.,.,', 'mysql.y.rb', 1203) def _reduce_515(val, _values) - call(:dot, :LESS, val) + call(:dot, :LOCAL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1202) +module_eval(<<'.,.,', 'mysql.y.rb', 1204) def _reduce_516(val, _values) - call(:dot, :LATIN1, val) + call(:dot, :LIKE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1203) +module_eval(<<'.,.,', 'mysql.y.rb', 1205) def _reduce_517(val, _values) - call(:dot, :LAST, val) + call(:dot, :LESS, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1204) +module_eval(<<'.,.,', 'mysql.y.rb', 1206) def _reduce_518(val, _values) - call(:dot, :KEY_BLOCK_SIZE, val) + call(:dot, :LATIN1, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1205) +module_eval(<<'.,.,', 'mysql.y.rb', 1207) def _reduce_519(val, _values) - call(:dot, :KEYS, val) + call(:dot, :LAST, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1206) +module_eval(<<'.,.,', 'mysql.y.rb', 1208) def _reduce_520(val, _values) - call(:dot, :KEY, val) + call(:dot, :KEY_BLOCK_SIZE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1207) +module_eval(<<'.,.,', 'mysql.y.rb', 1209) def _reduce_521(val, _values) - call(:dot, :INVOKER, val) + call(:dot, :KEYS, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1208) +module_eval(<<'.,.,', 'mysql.y.rb', 1210) def _reduce_522(val, _values) - call(:dot, :INTO, val) + call(:dot, :KEY, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1209) +module_eval(<<'.,.,', 'mysql.y.rb', 1211) def _reduce_523(val, _values) - call(:dot, :INTEGER, val) + call(:dot, :INVOKER, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1210) +module_eval(<<'.,.,', 'mysql.y.rb', 1212) def _reduce_524(val, _values) - call(:dot, :INT, val) + call(:dot, :INTO, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1211) +module_eval(<<'.,.,', 'mysql.y.rb', 1213) def _reduce_525(val, _values) - call(:dot, :INSERT_METHOD, val) + call(:dot, :INTEGER, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1212) +module_eval(<<'.,.,', 'mysql.y.rb', 1214) def _reduce_526(val, _values) - call(:dot, :INNODB, val) + call(:dot, :INT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1213) +module_eval(<<'.,.,', 'mysql.y.rb', 1215) def _reduce_527(val, _values) - call(:dot, :INDEX, val) + call(:dot, :INSERT_METHOD, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1214) +module_eval(<<'.,.,', 'mysql.y.rb', 1216) def _reduce_528(val, _values) - call(:dot, :IN, val) + call(:dot, :INNODB, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1215) +module_eval(<<'.,.,', 'mysql.y.rb', 1217) def _reduce_529(val, _values) - call(:dot, :IMPORT, val) + call(:dot, :INDEX, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1216) +module_eval(<<'.,.,', 'mysql.y.rb', 1218) def _reduce_530(val, _values) - call(:dot, :IGNORE, val) + call(:dot, :IN, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1217) +module_eval(<<'.,.,', 'mysql.y.rb', 1219) def _reduce_531(val, _values) - call(:dot, :IF, val) + call(:dot, :IMPORT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1218) +module_eval(<<'.,.,', 'mysql.y.rb', 1220) def _reduce_532(val, _values) - call(:dot, :HASH, val) + call(:dot, :IGNORE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1219) +module_eval(<<'.,.,', 'mysql.y.rb', 1221) def _reduce_533(val, _values) - call(:dot, :FULLTEXT, val) + call(:dot, :IF, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1220) +module_eval(<<'.,.,', 'mysql.y.rb', 1222) def _reduce_534(val, _values) - call(:dot, :FULL, val) + call(:dot, :HASH, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1221) +module_eval(<<'.,.,', 'mysql.y.rb', 1223) def _reduce_535(val, _values) - call(:dot, :FOREIGN, val) + call(:dot, :FULLTEXT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1222) +module_eval(<<'.,.,', 'mysql.y.rb', 1224) def _reduce_536(val, _values) - call(:dot, :FLOAT, val) + call(:dot, :FULL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1223) +module_eval(<<'.,.,', 'mysql.y.rb', 1225) def _reduce_537(val, _values) - call(:dot, :FIXED, val) + call(:dot, :FOREIGN, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1224) +module_eval(<<'.,.,', 'mysql.y.rb', 1226) def _reduce_538(val, _values) - call(:dot, :FIRST, val) + call(:dot, :FLOAT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1225) +module_eval(<<'.,.,', 'mysql.y.rb', 1227) def _reduce_539(val, _values) - call(:dot, :EXISTS, val) + call(:dot, :FIXED, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1226) +module_eval(<<'.,.,', 'mysql.y.rb', 1228) def _reduce_540(val, _values) - call(:dot, :ENUM, val) + call(:dot, :FIRST, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1227) +module_eval(<<'.,.,', 'mysql.y.rb', 1229) def _reduce_541(val, _values) - call(:dot, :ENGINE, val) + call(:dot, :EXISTS, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1228) +module_eval(<<'.,.,', 'mysql.y.rb', 1230) def _reduce_542(val, _values) - call(:dot, :ENABLE, val) + call(:dot, :ENUM, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1229) +module_eval(<<'.,.,', 'mysql.y.rb', 1231) def _reduce_543(val, _values) - call(:dot, :DYNAMIC, val) + call(:dot, :ENGINE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1230) +module_eval(<<'.,.,', 'mysql.y.rb', 1232) def _reduce_544(val, _values) - call(:dot, :DROP, val) + call(:dot, :ENABLE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1231) +module_eval(<<'.,.,', 'mysql.y.rb', 1233) def _reduce_545(val, _values) - call(:dot, :DOUBLE, val) + call(:dot, :DYNAMIC, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1232) +module_eval(<<'.,.,', 'mysql.y.rb', 1234) def _reduce_546(val, _values) - call(:dot, :DISK, val) + call(:dot, :DROP, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1233) +module_eval(<<'.,.,', 'mysql.y.rb', 1235) def _reduce_547(val, _values) - call(:dot, :DISCARD, val) + call(:dot, :DOUBLE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1234) +module_eval(<<'.,.,', 'mysql.y.rb', 1236) def _reduce_548(val, _values) - call(:dot, :DISABLE, val) + call(:dot, :DISK, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1235) +module_eval(<<'.,.,', 'mysql.y.rb', 1237) def _reduce_549(val, _values) - call(:dot, :DIRECTORY, val) + call(:dot, :DISCARD, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1236) +module_eval(<<'.,.,', 'mysql.y.rb', 1238) def _reduce_550(val, _values) - call(:dot, :DESC, val) + call(:dot, :DISABLE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1237) +module_eval(<<'.,.,', 'mysql.y.rb', 1239) def _reduce_551(val, _values) - call(:dot, :DELETE, val) + call(:dot, :DIRECTORY, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1238) +module_eval(<<'.,.,', 'mysql.y.rb', 1240) def _reduce_552(val, _values) - call(:dot, :DELAY_KEY_WRITE, val) + call(:dot, :DESC, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1239) +module_eval(<<'.,.,', 'mysql.y.rb', 1241) def _reduce_553(val, _values) - call(:dot, :DEFINER, val) + call(:dot, :DELETE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1240) +module_eval(<<'.,.,', 'mysql.y.rb', 1242) def _reduce_554(val, _values) - call(:dot, :DEFAULT, val) + call(:dot, :DELAY_KEY_WRITE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1241) +module_eval(<<'.,.,', 'mysql.y.rb', 1243) def _reduce_555(val, _values) - call(:dot, :DECIMAL, val) + call(:dot, :DEFINER, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1242) +module_eval(<<'.,.,', 'mysql.y.rb', 1244) def _reduce_556(val, _values) - call(:dot, :DATETIME, val) + call(:dot, :DEFAULT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1243) +module_eval(<<'.,.,', 'mysql.y.rb', 1245) def _reduce_557(val, _values) - call(:dot, :DATE, val) + call(:dot, :DECIMAL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1244) +module_eval(<<'.,.,', 'mysql.y.rb', 1246) def _reduce_558(val, _values) - call(:dot, :DATA, val) + call(:dot, :DATETIME, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1245) +module_eval(<<'.,.,', 'mysql.y.rb', 1247) def _reduce_559(val, _values) - call(:dot, :CURRENT_USER, val) + call(:dot, :DATE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1246) +module_eval(<<'.,.,', 'mysql.y.rb', 1248) def _reduce_560(val, _values) - call(:dot, :CURRENT_TIMESTAMP, val) + call(:dot, :DATA, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1247) +module_eval(<<'.,.,', 'mysql.y.rb', 1249) def _reduce_561(val, _values) - call(:dot, :CREATE, val) + call(:dot, :CURRENT_USER, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1248) +module_eval(<<'.,.,', 'mysql.y.rb', 1250) def _reduce_562(val, _values) - call(:dot, :CONVERT, val) + call(:dot, :CURRENT_TIMESTAMP, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1249) +module_eval(<<'.,.,', 'mysql.y.rb', 1251) def _reduce_563(val, _values) - call(:dot, :CONSTRAINT, val) + call(:dot, :CREATE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1250) +module_eval(<<'.,.,', 'mysql.y.rb', 1252) def _reduce_564(val, _values) - call(:dot, :CONNECTION, val) + call(:dot, :CONVERT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1251) +module_eval(<<'.,.,', 'mysql.y.rb', 1253) def _reduce_565(val, _values) - call(:dot, :COMPRESSED, val) + call(:dot, :CONSTRAINT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1252) +module_eval(<<'.,.,', 'mysql.y.rb', 1254) def _reduce_566(val, _values) - call(:dot, :COMPACT, val) + call(:dot, :CONNECTION, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1253) +module_eval(<<'.,.,', 'mysql.y.rb', 1255) def _reduce_567(val, _values) - call(:dot, :COMMENT, val) + call(:dot, :COMPRESSED, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1254) +module_eval(<<'.,.,', 'mysql.y.rb', 1256) def _reduce_568(val, _values) - call(:dot, :COLUMN_FORMAT, val) + call(:dot, :COMPACT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1255) +module_eval(<<'.,.,', 'mysql.y.rb', 1257) def _reduce_569(val, _values) - call(:dot, :COLUMN, val) + call(:dot, :COMMENT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1256) +module_eval(<<'.,.,', 'mysql.y.rb', 1258) def _reduce_570(val, _values) - call(:dot, :COLLATE, val) + call(:dot, :COLUMN_FORMAT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1257) +module_eval(<<'.,.,', 'mysql.y.rb', 1259) def _reduce_571(val, _values) - call(:dot, :COALESCE, val) + call(:dot, :COLUMN, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1258) +module_eval(<<'.,.,', 'mysql.y.rb', 1260) def _reduce_572(val, _values) - call(:dot, :CHECKSUM, val) + call(:dot, :COLLATE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1259) +module_eval(<<'.,.,', 'mysql.y.rb', 1261) def _reduce_573(val, _values) - call(:dot, :CHECK, val) + call(:dot, :COALESCE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1260) +module_eval(<<'.,.,', 'mysql.y.rb', 1262) def _reduce_574(val, _values) - call(:dot, :CHAR, val) + call(:dot, :CHECKSUM, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1261) +module_eval(<<'.,.,', 'mysql.y.rb', 1263) def _reduce_575(val, _values) - call(:dot, :CHANGE, val) + call(:dot, :CHECK, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1262) +module_eval(<<'.,.,', 'mysql.y.rb', 1264) def _reduce_576(val, _values) - call(:dot, :CASCADED, val) + call(:dot, :CHAR, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1263) +module_eval(<<'.,.,', 'mysql.y.rb', 1265) def _reduce_577(val, _values) - call(:dot, :CASCADE, val) + call(:dot, :CHANGE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1264) +module_eval(<<'.,.,', 'mysql.y.rb', 1266) def _reduce_578(val, _values) - call(:dot, :BY, val) + call(:dot, :CASCADED, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1265) +module_eval(<<'.,.,', 'mysql.y.rb', 1267) def _reduce_579(val, _values) - call(:dot, :BTREE, val) + call(:dot, :CASCADE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1266) +module_eval(<<'.,.,', 'mysql.y.rb', 1268) def _reduce_580(val, _values) - call(:dot, :BLOB, val) + call(:dot, :BY, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1267) +module_eval(<<'.,.,', 'mysql.y.rb', 1269) def _reduce_581(val, _values) - call(:dot, :BIT, val) + call(:dot, :BTREE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1268) +module_eval(<<'.,.,', 'mysql.y.rb', 1270) def _reduce_582(val, _values) - call(:dot, :BINARY, val) + call(:dot, :BLOB, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1269) +module_eval(<<'.,.,', 'mysql.y.rb', 1271) def _reduce_583(val, _values) - call(:dot, :BIGINT, val) + call(:dot, :BIT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1270) +module_eval(<<'.,.,', 'mysql.y.rb', 1272) def _reduce_584(val, _values) - call(:dot, :AVG_ROW_LENGTH, val) + call(:dot, :BINARY, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1271) +module_eval(<<'.,.,', 'mysql.y.rb', 1273) def _reduce_585(val, _values) - call(:dot, :AUTO_INCREMENT, val) + call(:dot, :BIGINT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1272) +module_eval(<<'.,.,', 'mysql.y.rb', 1274) def _reduce_586(val, _values) - call(:dot, :ASC, val) + call(:dot, :AVG_ROW_LENGTH, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1273) +module_eval(<<'.,.,', 'mysql.y.rb', 1275) def _reduce_587(val, _values) - call(:dot, :AS, val) + call(:dot, :AUTO_INCREMENT, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1274) +module_eval(<<'.,.,', 'mysql.y.rb', 1276) def _reduce_588(val, _values) - call(:dot, :ANALYZE, val) + call(:dot, :ASC, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1275) +module_eval(<<'.,.,', 'mysql.y.rb', 1277) def _reduce_589(val, _values) - call(:dot, :ALTER, val) + call(:dot, :AS, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1276) +module_eval(<<'.,.,', 'mysql.y.rb', 1278) def _reduce_590(val, _values) - call(:dot, :ALL, val) + call(:dot, :ANALYZE, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1277) +module_eval(<<'.,.,', 'mysql.y.rb', 1279) def _reduce_591(val, _values) - call(:dot, :ALGORITHM, val) + call(:dot, :ALTER, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1278) +module_eval(<<'.,.,', 'mysql.y.rb', 1280) def _reduce_592(val, _values) - call(:dot, :AFTER, val) + call(:dot, :ALL, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1279) +module_eval(<<'.,.,', 'mysql.y.rb', 1281) def _reduce_593(val, _values) - call(:dot, :ADD, val) + call(:dot, :ALGORITHM, val) end .,., -module_eval(<<'.,.,', 'mysql.y.rb', 1280) +module_eval(<<'.,.,', 'mysql.y.rb', 1282) def _reduce_594(val, _values) - call(:dot, :ACTION, val) + call(:dot, :AFTER, val) + end +.,., + +module_eval(<<'.,.,', 'mysql.y.rb', 1283) + def _reduce_595(val, _values) + call(:dot, :ADD, val) + end +.,., + +module_eval(<<'.,.,', 'mysql.y.rb', 1284) + def _reduce_596(val, _values) + call(:dot, :ACTION, val) end .,., diff --git a/mysql.y.rb b/mysql.y.rb index 7a9df79..dd5aec7 100644 --- a/mysql.y.rb +++ b/mysql.y.rb @@ -1021,10 +1021,10 @@ class MySQLParser literal : value { call(:literal, nil, val) } value : - null { call(:value, :literal, val) } - | number { call(:value, :number, val) } - | string { call(:value, :string, val) } - | CURRENT_TIMESTAMP S { call(:value, :CURRENT_TIMESTAMP, val) } + null { call(:value, :literal, val) } + | number { call(:value, :number, val) } + | string { call(:value, :string, val) } + | current_timestamp { call(:value, :current_timestamp, val) } # # no rule uses it # string_expr : @@ -1058,6 +1058,10 @@ class MySQLParser nat { call(:integer, :nat, val) } | negative_integer { call(:integer, :neg, val) } + current_timestamp : + CURRENT_TIMESTAMP S { call(:current_timestamp, :CURRENT_TIMESTAMP, val) } + | CURRENT_TIMESTAMP S r_opt_datatype_int { call(:current_timestamp, :CURRENT_TIMESTAMP, val) } + negative_integer : S_MINUS S_ONE S { call(:negative_integer, :one, val) } # TODO: space between? | S_MINUS S_NAT S { call(:negative_integer, :rest, val) } diff --git a/parser.output b/parser.output index d68ba29..2701464 100644 --- a/parser.output +++ b/parser.output @@ -1,4 +1,6 @@ +state 951 contains 18 reduce/reduce conflicts +rule 397 (current_timestamp) never reduced -------- Grammar -------- @@ -386,7 +388,7 @@ rule 381 literal: value rule 382 value: null rule 383 value: number rule 384 value: string -rule 385 value: CURRENT_TIMESTAMP S +rule 385 value: current_timestamp rule 386 string: S_SINGLEQUOTE_IN opt_string_in_quote S_SINGLEQUOTE_OUT S rule 387 string: S_DOUBLEQUOTE_IN opt_string_in_quote S_DOUBLEQUOTE_OUT S rule 388 opt_string_in_quote: @@ -398,204 +400,206 @@ rule 393 binary: S_ZERO S rule 394 binary: S_ONE S rule 395 integer: nat rule 396 integer: negative_integer -rule 397 negative_integer: S_MINUS S_ONE S -rule 398 negative_integer: S_MINUS S_NAT S -rule 399 nat: S_NAT S -rule 400 nat: binary -rule 401 null: NULL S -rule 402 ident: raw_ident -rule 403 ident: S_BACKTICK_IN opt_ident_in_backtick S_BACKTICK_OUT S -rule 404 opt_ident_in_backtick: -rule 405 opt_ident_in_backtick: opt_ident_in_backtick S_IDENT_IN_BACKTICK -rule 406 raw_ident: S_IDENT_NORMAL S -rule 407 S: S_SPACE -rule 408 star: dot -rule 409 star: star dot -rule 410 dot: ZEROFILL -rule 411 dot: YEAR -rule 412 dot: WITH -rule 413 dot: VIEW -rule 414 dot: VARCHAR -rule 415 dot: VARBINARY -rule 416 dot: VALUES -rule 417 dot: UTF8MB4 -rule 418 dot: UTF8MB3 -rule 419 dot: UTF8 -rule 420 dot: USING -rule 421 dot: UPDATE -rule 422 dot: UNSIGNED -rule 423 dot: UNIQUE -rule 424 dot: UNION -rule 425 dot: UNDEFINED -rule 426 dot: TRUNCATE -rule 427 dot: TO -rule 428 dot: TINYTEXT -rule 429 dot: TINYINT -rule 430 dot: TINYBLOB -rule 431 dot: TIMESTAMP -rule 432 dot: TIME -rule 433 dot: THAN -rule 434 dot: TEXT -rule 435 dot: TEMPTABLE -rule 436 dot: TEMPORARY -rule 437 dot: TABLESPACE -rule 438 dot: TABLE -rule 439 dot: S_ZERO -rule 440 dot: S_STRING_IN_SINGLEQUOTE -rule 441 dot: S_STRING_IN_QUOTE -rule 442 dot: S_SPACE -rule 443 dot: S_SINGLEQUOTE_OUT -rule 444 dot: S_SINGLEQUOTE_IN -rule 445 dot: S_RIGHT_PAREN -rule 446 dot: S_ONE -rule 447 dot: S_NAT -rule 448 dot: S_MINUS -rule 449 dot: S_LEFT_PAREN -rule 450 dot: S_IDENT_NORMAL -rule 451 dot: S_IDENT_IN_BACKTICK -rule 452 dot: S_FLOAT -rule 453 dot: S_EQUAL -rule 454 dot: S_DOUBLEQUOTE_OUT -rule 455 dot: S_DOUBLEQUOTE_IN -rule 456 dot: S_DOT -rule 457 dot: S_COMMA -rule 458 dot: S_BACKTICK_OUT -rule 459 dot: S_BACKTICK_IN -rule 460 dot: S_AT -rule 461 dot: SUBPARTITION -rule 462 dot: STORAGE -rule 463 dot: SQL -rule 464 dot: SPATIAL -rule 465 dot: SMALLINT -rule 466 dot: SIMPLE -rule 467 dot: SET -rule 468 dot: SELECT -rule 469 dot: SECURITY -rule 470 dot: ROW_FORMAT -rule 471 dot: RESTRICT -rule 472 dot: REPLACE -rule 473 dot: REPAIR -rule 474 dot: REORGANIZE -rule 475 dot: RENAME -rule 476 dot: REMOVE -rule 477 dot: REFERENCES -rule 478 dot: REDUNDANT -rule 479 dot: REBUILD -rule 480 dot: REAL -rule 481 dot: PRIMARY -rule 482 dot: PASSWORD -rule 483 dot: PARTITIONING -rule 484 dot: PARTITION -rule 485 dot: PARTIAL -rule 486 dot: PARSER -rule 487 dot: PACK_KEYS -rule 488 dot: ORDER -rule 489 dot: OR -rule 490 dot: OPTION -rule 491 dot: OPTIMIZE -rule 492 dot: ONLINE -rule 493 dot: ON -rule 494 dot: OFFLINE -rule 495 dot: NUMERIC -rule 496 dot: NULL -rule 497 dot: NOT -rule 498 dot: NODEGROUP -rule 499 dot: NO -rule 500 dot: MODIFY -rule 501 dot: MIN_ROWS -rule 502 dot: MERGE -rule 503 dot: MEMORY -rule 504 dot: MEDIUMTEXT -rule 505 dot: MEDIUMINT -rule 506 dot: MEDIUMBLOB -rule 507 dot: MAX_ROWS -rule 508 dot: MAXVALUE -rule 509 dot: MATCH -rule 510 dot: L_CHARACTER_SET -rule 511 dot: LONGTEXT -rule 512 dot: LONGBLOB -rule 513 dot: LOCAL -rule 514 dot: LIKE -rule 515 dot: LESS -rule 516 dot: LATIN1 -rule 517 dot: LAST -rule 518 dot: KEY_BLOCK_SIZE -rule 519 dot: KEYS -rule 520 dot: KEY -rule 521 dot: INVOKER -rule 522 dot: INTO -rule 523 dot: INTEGER -rule 524 dot: INT -rule 525 dot: INSERT_METHOD -rule 526 dot: INNODB -rule 527 dot: INDEX -rule 528 dot: IN -rule 529 dot: IMPORT -rule 530 dot: IGNORE -rule 531 dot: IF -rule 532 dot: HASH -rule 533 dot: FULLTEXT -rule 534 dot: FULL -rule 535 dot: FOREIGN -rule 536 dot: FLOAT -rule 537 dot: FIXED -rule 538 dot: FIRST -rule 539 dot: EXISTS -rule 540 dot: ENUM -rule 541 dot: ENGINE -rule 542 dot: ENABLE -rule 543 dot: DYNAMIC -rule 544 dot: DROP -rule 545 dot: DOUBLE -rule 546 dot: DISK -rule 547 dot: DISCARD -rule 548 dot: DISABLE -rule 549 dot: DIRECTORY -rule 550 dot: DESC -rule 551 dot: DELETE -rule 552 dot: DELAY_KEY_WRITE -rule 553 dot: DEFINER -rule 554 dot: DEFAULT -rule 555 dot: DECIMAL -rule 556 dot: DATETIME -rule 557 dot: DATE -rule 558 dot: DATA -rule 559 dot: CURRENT_USER -rule 560 dot: CURRENT_TIMESTAMP -rule 561 dot: CREATE -rule 562 dot: CONVERT -rule 563 dot: CONSTRAINT -rule 564 dot: CONNECTION -rule 565 dot: COMPRESSED -rule 566 dot: COMPACT -rule 567 dot: COMMENT -rule 568 dot: COLUMN_FORMAT -rule 569 dot: COLUMN -rule 570 dot: COLLATE -rule 571 dot: COALESCE -rule 572 dot: CHECKSUM -rule 573 dot: CHECK -rule 574 dot: CHAR -rule 575 dot: CHANGE -rule 576 dot: CASCADED -rule 577 dot: CASCADE -rule 578 dot: BY -rule 579 dot: BTREE -rule 580 dot: BLOB -rule 581 dot: BIT -rule 582 dot: BINARY -rule 583 dot: BIGINT -rule 584 dot: AVG_ROW_LENGTH -rule 585 dot: AUTO_INCREMENT -rule 586 dot: ASC -rule 587 dot: AS -rule 588 dot: ANALYZE -rule 589 dot: ALTER -rule 590 dot: ALL -rule 591 dot: ALGORITHM -rule 592 dot: AFTER -rule 593 dot: ADD -rule 594 dot: ACTION +rule 397 current_timestamp: CURRENT_TIMESTAMP S +rule 398 current_timestamp: CURRENT_TIMESTAMP S r_opt_datatype_int +rule 399 negative_integer: S_MINUS S_ONE S +rule 400 negative_integer: S_MINUS S_NAT S +rule 401 nat: S_NAT S +rule 402 nat: binary +rule 403 null: NULL S +rule 404 ident: raw_ident +rule 405 ident: S_BACKTICK_IN opt_ident_in_backtick S_BACKTICK_OUT S +rule 406 opt_ident_in_backtick: +rule 407 opt_ident_in_backtick: opt_ident_in_backtick S_IDENT_IN_BACKTICK +rule 408 raw_ident: S_IDENT_NORMAL S +rule 409 S: S_SPACE +rule 410 star: dot +rule 411 star: star dot +rule 412 dot: ZEROFILL +rule 413 dot: YEAR +rule 414 dot: WITH +rule 415 dot: VIEW +rule 416 dot: VARCHAR +rule 417 dot: VARBINARY +rule 418 dot: VALUES +rule 419 dot: UTF8MB4 +rule 420 dot: UTF8MB3 +rule 421 dot: UTF8 +rule 422 dot: USING +rule 423 dot: UPDATE +rule 424 dot: UNSIGNED +rule 425 dot: UNIQUE +rule 426 dot: UNION +rule 427 dot: UNDEFINED +rule 428 dot: TRUNCATE +rule 429 dot: TO +rule 430 dot: TINYTEXT +rule 431 dot: TINYINT +rule 432 dot: TINYBLOB +rule 433 dot: TIMESTAMP +rule 434 dot: TIME +rule 435 dot: THAN +rule 436 dot: TEXT +rule 437 dot: TEMPTABLE +rule 438 dot: TEMPORARY +rule 439 dot: TABLESPACE +rule 440 dot: TABLE +rule 441 dot: S_ZERO +rule 442 dot: S_STRING_IN_SINGLEQUOTE +rule 443 dot: S_STRING_IN_QUOTE +rule 444 dot: S_SPACE +rule 445 dot: S_SINGLEQUOTE_OUT +rule 446 dot: S_SINGLEQUOTE_IN +rule 447 dot: S_RIGHT_PAREN +rule 448 dot: S_ONE +rule 449 dot: S_NAT +rule 450 dot: S_MINUS +rule 451 dot: S_LEFT_PAREN +rule 452 dot: S_IDENT_NORMAL +rule 453 dot: S_IDENT_IN_BACKTICK +rule 454 dot: S_FLOAT +rule 455 dot: S_EQUAL +rule 456 dot: S_DOUBLEQUOTE_OUT +rule 457 dot: S_DOUBLEQUOTE_IN +rule 458 dot: S_DOT +rule 459 dot: S_COMMA +rule 460 dot: S_BACKTICK_OUT +rule 461 dot: S_BACKTICK_IN +rule 462 dot: S_AT +rule 463 dot: SUBPARTITION +rule 464 dot: STORAGE +rule 465 dot: SQL +rule 466 dot: SPATIAL +rule 467 dot: SMALLINT +rule 468 dot: SIMPLE +rule 469 dot: SET +rule 470 dot: SELECT +rule 471 dot: SECURITY +rule 472 dot: ROW_FORMAT +rule 473 dot: RESTRICT +rule 474 dot: REPLACE +rule 475 dot: REPAIR +rule 476 dot: REORGANIZE +rule 477 dot: RENAME +rule 478 dot: REMOVE +rule 479 dot: REFERENCES +rule 480 dot: REDUNDANT +rule 481 dot: REBUILD +rule 482 dot: REAL +rule 483 dot: PRIMARY +rule 484 dot: PASSWORD +rule 485 dot: PARTITIONING +rule 486 dot: PARTITION +rule 487 dot: PARTIAL +rule 488 dot: PARSER +rule 489 dot: PACK_KEYS +rule 490 dot: ORDER +rule 491 dot: OR +rule 492 dot: OPTION +rule 493 dot: OPTIMIZE +rule 494 dot: ONLINE +rule 495 dot: ON +rule 496 dot: OFFLINE +rule 497 dot: NUMERIC +rule 498 dot: NULL +rule 499 dot: NOT +rule 500 dot: NODEGROUP +rule 501 dot: NO +rule 502 dot: MODIFY +rule 503 dot: MIN_ROWS +rule 504 dot: MERGE +rule 505 dot: MEMORY +rule 506 dot: MEDIUMTEXT +rule 507 dot: MEDIUMINT +rule 508 dot: MEDIUMBLOB +rule 509 dot: MAX_ROWS +rule 510 dot: MAXVALUE +rule 511 dot: MATCH +rule 512 dot: L_CHARACTER_SET +rule 513 dot: LONGTEXT +rule 514 dot: LONGBLOB +rule 515 dot: LOCAL +rule 516 dot: LIKE +rule 517 dot: LESS +rule 518 dot: LATIN1 +rule 519 dot: LAST +rule 520 dot: KEY_BLOCK_SIZE +rule 521 dot: KEYS +rule 522 dot: KEY +rule 523 dot: INVOKER +rule 524 dot: INTO +rule 525 dot: INTEGER +rule 526 dot: INT +rule 527 dot: INSERT_METHOD +rule 528 dot: INNODB +rule 529 dot: INDEX +rule 530 dot: IN +rule 531 dot: IMPORT +rule 532 dot: IGNORE +rule 533 dot: IF +rule 534 dot: HASH +rule 535 dot: FULLTEXT +rule 536 dot: FULL +rule 537 dot: FOREIGN +rule 538 dot: FLOAT +rule 539 dot: FIXED +rule 540 dot: FIRST +rule 541 dot: EXISTS +rule 542 dot: ENUM +rule 543 dot: ENGINE +rule 544 dot: ENABLE +rule 545 dot: DYNAMIC +rule 546 dot: DROP +rule 547 dot: DOUBLE +rule 548 dot: DISK +rule 549 dot: DISCARD +rule 550 dot: DISABLE +rule 551 dot: DIRECTORY +rule 552 dot: DESC +rule 553 dot: DELETE +rule 554 dot: DELAY_KEY_WRITE +rule 555 dot: DEFINER +rule 556 dot: DEFAULT +rule 557 dot: DECIMAL +rule 558 dot: DATETIME +rule 559 dot: DATE +rule 560 dot: DATA +rule 561 dot: CURRENT_USER +rule 562 dot: CURRENT_TIMESTAMP +rule 563 dot: CREATE +rule 564 dot: CONVERT +rule 565 dot: CONSTRAINT +rule 566 dot: CONNECTION +rule 567 dot: COMPRESSED +rule 568 dot: COMPACT +rule 569 dot: COMMENT +rule 570 dot: COLUMN_FORMAT +rule 571 dot: COLUMN +rule 572 dot: COLLATE +rule 573 dot: COALESCE +rule 574 dot: CHECKSUM +rule 575 dot: CHECK +rule 576 dot: CHAR +rule 577 dot: CHANGE +rule 578 dot: CASCADED +rule 579 dot: CASCADE +rule 580 dot: BY +rule 581 dot: BTREE +rule 582 dot: BLOB +rule 583 dot: BIT +rule 584 dot: BINARY +rule 585 dot: BIGINT +rule 586 dot: AVG_ROW_LENGTH +rule 587 dot: AUTO_INCREMENT +rule 588 dot: ASC +rule 589 dot: AS +rule 590 dot: ANALYZE +rule 591 dot: ALTER +rule 592 dot: ALL +rule 593 dot: ALGORITHM +rule 594 dot: AFTER +rule 595 dot: ADD +rule 596 dot: ACTION ------- Symbols ------- @@ -608,8 +612,8 @@ rule 594 dot: ACTION on right: on left : 1 S (189) - on right: 1 10 14 16 17 18 20 21 23 24 25 27 30 31 32 36 37 40 42 44 47 49 51 52 54 58 59 60 61 62 63 67 68 69 70 72 73 74 75 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 93 94 95 96 97 99 100 101 102 103 104 105 106 107 108 116 119 120 121 122 123 124 125 126 127 128 129 130 131 133 134 135 139 140 145 146 148 149 150 151 153 165 167 168 169 172 186 188 190 191 193 194 195 196 197 198 199 200 201 202 203 204 205 206 208 209 210 212 213 215 216 217 218 219 220 222 223 225 226 228 230 232 234 235 236 238 239 240 242 243 244 246 249 250 251 252 254 255 256 257 259 270 271 276 277 281 332 334 335 336 337 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 374 377 378 379 385 386 387 392 393 394 397 398 399 401 403 406 - on left : 407 + on right: 1 10 14 16 17 18 20 21 23 24 25 27 30 31 32 36 37 40 42 44 47 49 51 52 54 58 59 60 61 62 63 67 68 69 70 72 73 74 75 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 93 94 95 96 97 99 100 101 102 103 104 105 106 107 108 116 119 120 121 122 123 124 125 126 127 128 129 130 131 133 134 135 139 140 145 146 148 149 150 151 153 165 167 168 169 172 186 188 190 191 193 194 195 196 197 198 199 200 201 202 203 204 205 206 208 209 210 212 213 215 216 217 218 219 220 222 223 225 226 228 230 232 234 235 236 238 239 240 242 243 244 246 249 250 251 252 254 255 256 257 259 270 271 276 277 281 332 334 335 336 337 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 374 377 378 379 386 387 392 393 394 397 398 399 400 401 403 405 408 + on left : 409 r_commands (190) on right: 1 on left : 2 3 4 5 6 7 8 9 @@ -656,8 +660,8 @@ rule 594 dot: ACTION on right: 10 on left : 11 12 star (205) - on right: 10 69 409 - on left : 408 409 + on right: 10 69 411 + on left : 410 411 left_paren (206) on right: 12 36 38 78 107 122 136 165 183 184 206 255 256 274 276 368 369 on left : 378 @@ -837,9 +841,9 @@ rule 594 dot: ACTION on left : 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 nat (265) on right: 96 97 108 129 148 183 184 250 251 395 - on left : 399 400 + on left : 401 402 binary (266) - on right: 99 101 237 400 + on right: 99 101 237 402 on left : 393 394 r_NO_or_FIRST_or_LAST (267) on right: 102 @@ -965,7 +969,7 @@ rule 594 dot: ACTION on right: 175 182 on left : 184 r_opt_datatype_int (308) - on right: 340 341 342 343 344 345 351 352 353 354 + on right: 340 341 342 343 344 345 351 352 353 354 398 on left : 176 r_opt_length_int (309) on right: 176 314 339 356 357 358 @@ -996,7 +1000,7 @@ rule 594 dot: ACTION on left : 374 null (318) on right: 191 192 222 382 - on left : 401 + on left : 403 value (319) on right: 193 381 on left : 382 383 384 385 @@ -1083,221 +1087,224 @@ rule 594 dot: ACTION on left : 324 325 326 ident (347) on right: 316 317 318 319 320 322 324 325 326 330 331 380 - on left : 402 403 + on left : 404 405 raw_ident (348) - on right: 321 333 338 370 402 - on left : 406 + on right: 321 333 338 370 404 + on left : 408 r_user_name_part (349) on right: 327 328 on left : 329 330 number (350) on right: 371 383 on left : 390 391 - opt_string_in_quote (351) + current_timestamp (351) + on right: 385 + on left : 397 398 + opt_string_in_quote (352) on right: 386 387 389 on left : 388 389 - float (352) + float (353) on right: 391 on left : 392 - negative_integer (353) + negative_integer (354) on right: 396 - on left : 397 398 - opt_ident_in_backtick (354) - on right: 403 405 - on left : 404 405 - dot (355) - on right: 408 409 - on left : 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 + on left : 399 400 + opt_ident_in_backtick (355) + on right: 405 407 + on left : 406 407 + dot (356) + on right: 410 411 + on left : 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 **Terminals, with rules where they appear $end (0) error (1) - CREATE (2) 10 32 165 561 - VIEW (3) 10 25 413 - AS (4) 10 225 228 587 - OR (5) 14 489 - REPLACE (6) 14 281 472 - ALGORITHM (7) 16 17 18 591 - UNDEFINED (8) 16 425 - MERGE (9) 17 502 - TEMPTABLE (10) 18 435 - DEFINER (11) 20 21 23 553 - CURRENT_USER (12) 21 559 - SQL (13) 23 24 463 - SECURITY (14) 23 24 469 - INVOKER (15) 24 521 - DROP (16) 25 30 82 83 89 91 123 151 172 544 - IF (17) 27 44 531 - EXISTS (18) 27 44 539 - TABLE (19) 30 32 42 49 438 - TRUNCATE (20) 31 130 426 - LIKE (21) 36 37 514 - TEMPORARY (22) 40 436 - NOT (23) 44 191 497 - CHECK (24) 47 127 573 - ALTER (25) 49 80 589 - ONLINE (26) 51 492 - OFFLINE (27) 52 494 - IGNORE (28) 54 280 530 - DEFAULT (29) 58 150 151 193 202 205 236 244 246 554 - DYNAMIC (30) 59 201 543 - COMPRESSED (31) 60 565 - FIXED (32) 61 200 537 - REDUNDANT (33) 62 478 - COMPACT (34) 63 566 - REMOVE (35) 67 476 - PARTITIONING (36) 67 483 - PARTITION (37) 68 122 123 124 125 126 127 128 129 130 131 252 484 - BY (38) 68 93 578 - SELECT (39) 69 468 - PRIMARY (40) 70 91 197 198 481 - KEY (41) 70 75 83 91 140 196 198 520 - UNIQUE (42) 72 167 195 196 423 - FULLTEXT (43) 73 168 533 - SPATIAL (44) 74 169 464 - FOREIGN (45) 75 83 535 - ADD (46) 77 78 79 122 593 - CHANGE (47) 81 575 - DISABLE (48) 84 548 - KEYS (49) 84 85 519 - ENABLE (50) 85 542 - RENAME (51) 86 475 - CONVERT (52) 87 562 - TO (53) 87 226 427 - L_CHARACTER_SET (54) 87 135 230 510 - COLLATE (55) 88 116 232 570 - MODIFY (56) 90 500 - ORDER (57) 93 488 - DATA (58) 94 558 - DIRECTORY (59) 94 95 549 - INDEX (60) 95 139 165 172 527 - AUTO_INCREMENT (61) 96 194 585 - AVG_ROW_LENGTH (62) 97 584 - CHECKSUM (63) 99 572 - CONNECTION (64) 100 564 - DELAY_KEY_WRITE (65) 101 552 - INSERT_METHOD (66) 102 525 - PACK_KEYS (67) 103 487 - PASSWORD (68) 104 482 - ROW_FORMAT (69) 105 470 - TABLESPACE (70) 106 120 121 270 437 - UNION (71) 107 424 - KEY_BLOCK_SIZE (72) 108 148 518 - NODEGROUP (73) 119 498 - DISCARD (74) 120 547 - IMPORT (75) 121 529 - REBUILD (76) 124 479 - OPTIMIZE (77) 125 491 - ANALYZE (78) 126 588 - REPAIR (79) 128 473 - COALESCE (80) 129 571 - REORGANIZE (81) 131 474 - CONSTRAINT (82) 133 134 563 - USING (83) 145 146 420 - BTREE (84) 145 579 - HASH (85) 146 532 - WITH (86) 149 412 - PARSER (87) 149 486 - SET (88) 150 222 368 467 - COLUMN (89) 153 569 - ON (90) 165 172 215 216 217 218 493 - UNSIGNED (91) 186 422 - ZEROFILL (92) 188 410 - BINARY (93) 190 358 582 - COMMENT (94) 199 249 567 - COLUMN_FORMAT (95) 200 201 202 568 - STORAGE (96) 203 204 205 242 243 244 259 462 - DISK (97) 203 242 546 - MEMORY (98) 204 243 503 - REFERENCES (99) 206 477 - MATCH (100) 208 209 210 509 - FULL (101) 208 534 - PARTIAL (102) 209 485 - SIMPLE (103) 210 466 - ASC (104) 212 586 - DESC (105) 213 550 - DELETE (106) 215 216 551 - UPDATE (107) 216 217 218 421 - RESTRICT (108) 219 471 - CASCADE (109) 220 577 - NO (110) 223 238 499 - ACTION (111) 223 594 - FIRST (112) 234 239 538 - AFTER (113) 235 592 - LAST (114) 240 517 - MAX_ROWS (115) 250 507 - MIN_ROWS (116) 251 501 - VALUES (117) 254 255 256 416 - LESS (118) 254 255 515 - THAN (119) 254 255 433 - MAXVALUE (120) 254 508 - IN (121) 256 528 - ENGINE (122) 257 259 541 - SUBPARTITION (123) 271 461 - INTO (124) 276 522 - ALL (125) 277 590 - S_IDENT_NORMAL (126) 325 406 450 - S_DOT (127) 325 326 456 - S_AT (128) 328 460 - INNODB (129) 332 526 - LATIN1 (130) 334 516 - UTF8 (131) 335 419 - UTF8MB4 (132) 336 417 - UTF8MB3 (133) 337 418 - BIT (134) 339 581 - TINYINT (135) 340 429 - SMALLINT (136) 341 465 - MEDIUMINT (137) 342 505 - INT (138) 343 524 - INTEGER (139) 344 523 - BIGINT (140) 345 583 - REAL (141) 346 480 - DOUBLE (142) 347 545 - FLOAT (143) 348 536 - DECIMAL (144) 349 555 - NUMERIC (145) 350 495 - DATE (146) 351 557 - TIME (147) 352 432 - TIMESTAMP (148) 353 431 - DATETIME (149) 354 556 - YEAR (150) 355 411 - CHAR (151) 356 574 - VARCHAR (152) 357 414 - VARBINARY (153) 359 415 - TINYBLOB (154) 360 430 - BLOB (155) 361 580 - MEDIUMBLOB (156) 362 506 - LONGBLOB (157) 363 512 - TINYTEXT (158) 364 428 - TEXT (159) 365 434 - MEDIUMTEXT (160) 366 504 - LONGTEXT (161) 367 511 - ENUM (162) 369 540 - S_COMMA (163) 374 457 - S_EQUAL (164) 377 453 - S_LEFT_PAREN (165) 378 449 - S_RIGHT_PAREN (166) 379 445 - CURRENT_TIMESTAMP (167) 385 560 - S_SINGLEQUOTE_IN (168) 386 444 - S_SINGLEQUOTE_OUT (169) 386 443 - S_DOUBLEQUOTE_IN (170) 387 455 - S_DOUBLEQUOTE_OUT (171) 387 454 - S_STRING_IN_QUOTE (172) 389 441 - S_FLOAT (173) 392 452 - S_ZERO (174) 393 439 - S_ONE (175) 394 397 446 - S_MINUS (176) 397 398 448 - S_NAT (177) 398 399 447 - NULL (178) 401 496 - S_BACKTICK_IN (179) 403 459 - S_BACKTICK_OUT (180) 403 458 - S_IDENT_IN_BACKTICK (181) 405 451 - S_SPACE (182) 407 442 - S_STRING_IN_SINGLEQUOTE (183) 440 - OPTION (184) 490 - LOCAL (185) 513 - CASCADED (186) 576 + CREATE (2) 10 32 165 563 + VIEW (3) 10 25 415 + AS (4) 10 225 228 589 + OR (5) 14 491 + REPLACE (6) 14 281 474 + ALGORITHM (7) 16 17 18 593 + UNDEFINED (8) 16 427 + MERGE (9) 17 504 + TEMPTABLE (10) 18 437 + DEFINER (11) 20 21 23 555 + CURRENT_USER (12) 21 561 + SQL (13) 23 24 465 + SECURITY (14) 23 24 471 + INVOKER (15) 24 523 + DROP (16) 25 30 82 83 89 91 123 151 172 546 + IF (17) 27 44 533 + EXISTS (18) 27 44 541 + TABLE (19) 30 32 42 49 440 + TRUNCATE (20) 31 130 428 + LIKE (21) 36 37 516 + TEMPORARY (22) 40 438 + NOT (23) 44 191 499 + CHECK (24) 47 127 575 + ALTER (25) 49 80 591 + ONLINE (26) 51 494 + OFFLINE (27) 52 496 + IGNORE (28) 54 280 532 + DEFAULT (29) 58 150 151 193 202 205 236 244 246 556 + DYNAMIC (30) 59 201 545 + COMPRESSED (31) 60 567 + FIXED (32) 61 200 539 + REDUNDANT (33) 62 480 + COMPACT (34) 63 568 + REMOVE (35) 67 478 + PARTITIONING (36) 67 485 + PARTITION (37) 68 122 123 124 125 126 127 128 129 130 131 252 486 + BY (38) 68 93 580 + SELECT (39) 69 470 + PRIMARY (40) 70 91 197 198 483 + KEY (41) 70 75 83 91 140 196 198 522 + UNIQUE (42) 72 167 195 196 425 + FULLTEXT (43) 73 168 535 + SPATIAL (44) 74 169 466 + FOREIGN (45) 75 83 537 + ADD (46) 77 78 79 122 595 + CHANGE (47) 81 577 + DISABLE (48) 84 550 + KEYS (49) 84 85 521 + ENABLE (50) 85 544 + RENAME (51) 86 477 + CONVERT (52) 87 564 + TO (53) 87 226 429 + L_CHARACTER_SET (54) 87 135 230 512 + COLLATE (55) 88 116 232 572 + MODIFY (56) 90 502 + ORDER (57) 93 490 + DATA (58) 94 560 + DIRECTORY (59) 94 95 551 + INDEX (60) 95 139 165 172 529 + AUTO_INCREMENT (61) 96 194 587 + AVG_ROW_LENGTH (62) 97 586 + CHECKSUM (63) 99 574 + CONNECTION (64) 100 566 + DELAY_KEY_WRITE (65) 101 554 + INSERT_METHOD (66) 102 527 + PACK_KEYS (67) 103 489 + PASSWORD (68) 104 484 + ROW_FORMAT (69) 105 472 + TABLESPACE (70) 106 120 121 270 439 + UNION (71) 107 426 + KEY_BLOCK_SIZE (72) 108 148 520 + NODEGROUP (73) 119 500 + DISCARD (74) 120 549 + IMPORT (75) 121 531 + REBUILD (76) 124 481 + OPTIMIZE (77) 125 493 + ANALYZE (78) 126 590 + REPAIR (79) 128 475 + COALESCE (80) 129 573 + REORGANIZE (81) 131 476 + CONSTRAINT (82) 133 134 565 + USING (83) 145 146 422 + BTREE (84) 145 581 + HASH (85) 146 534 + WITH (86) 149 414 + PARSER (87) 149 488 + SET (88) 150 222 368 469 + COLUMN (89) 153 571 + ON (90) 165 172 215 216 217 218 495 + UNSIGNED (91) 186 424 + ZEROFILL (92) 188 412 + BINARY (93) 190 358 584 + COMMENT (94) 199 249 569 + COLUMN_FORMAT (95) 200 201 202 570 + STORAGE (96) 203 204 205 242 243 244 259 464 + DISK (97) 203 242 548 + MEMORY (98) 204 243 505 + REFERENCES (99) 206 479 + MATCH (100) 208 209 210 511 + FULL (101) 208 536 + PARTIAL (102) 209 487 + SIMPLE (103) 210 468 + ASC (104) 212 588 + DESC (105) 213 552 + DELETE (106) 215 216 553 + UPDATE (107) 216 217 218 423 + RESTRICT (108) 219 473 + CASCADE (109) 220 579 + NO (110) 223 238 501 + ACTION (111) 223 596 + FIRST (112) 234 239 540 + AFTER (113) 235 594 + LAST (114) 240 519 + MAX_ROWS (115) 250 509 + MIN_ROWS (116) 251 503 + VALUES (117) 254 255 256 418 + LESS (118) 254 255 517 + THAN (119) 254 255 435 + MAXVALUE (120) 254 510 + IN (121) 256 530 + ENGINE (122) 257 259 543 + SUBPARTITION (123) 271 463 + INTO (124) 276 524 + ALL (125) 277 592 + S_IDENT_NORMAL (126) 325 408 452 + S_DOT (127) 325 326 458 + S_AT (128) 328 462 + INNODB (129) 332 528 + LATIN1 (130) 334 518 + UTF8 (131) 335 421 + UTF8MB4 (132) 336 419 + UTF8MB3 (133) 337 420 + BIT (134) 339 583 + TINYINT (135) 340 431 + SMALLINT (136) 341 467 + MEDIUMINT (137) 342 507 + INT (138) 343 526 + INTEGER (139) 344 525 + BIGINT (140) 345 585 + REAL (141) 346 482 + DOUBLE (142) 347 547 + FLOAT (143) 348 538 + DECIMAL (144) 349 557 + NUMERIC (145) 350 497 + DATE (146) 351 559 + TIME (147) 352 434 + TIMESTAMP (148) 353 433 + DATETIME (149) 354 558 + YEAR (150) 355 413 + CHAR (151) 356 576 + VARCHAR (152) 357 416 + VARBINARY (153) 359 417 + TINYBLOB (154) 360 432 + BLOB (155) 361 582 + MEDIUMBLOB (156) 362 508 + LONGBLOB (157) 363 514 + TINYTEXT (158) 364 430 + TEXT (159) 365 436 + MEDIUMTEXT (160) 366 506 + LONGTEXT (161) 367 513 + ENUM (162) 369 542 + S_COMMA (163) 374 459 + S_EQUAL (164) 377 455 + S_LEFT_PAREN (165) 378 451 + S_RIGHT_PAREN (166) 379 447 + S_SINGLEQUOTE_IN (167) 386 446 + S_SINGLEQUOTE_OUT (168) 386 445 + S_DOUBLEQUOTE_IN (169) 387 457 + S_DOUBLEQUOTE_OUT (170) 387 456 + S_STRING_IN_QUOTE (171) 389 443 + S_FLOAT (172) 392 454 + S_ZERO (173) 393 441 + S_ONE (174) 394 399 448 + CURRENT_TIMESTAMP (175) 397 398 562 + S_MINUS (176) 399 400 450 + S_NAT (177) 400 401 449 + NULL (178) 403 498 + S_BACKTICK_IN (179) 405 461 + S_BACKTICK_OUT (180) 405 460 + S_IDENT_IN_BACKTICK (181) 407 453 + S_SPACE (182) 409 444 + S_STRING_IN_SINGLEQUOTE (183) 442 + OPTION (184) 492 + LOCAL (185) 515 + CASCADED (186) 578 --------- State --------- @@ -1336,9 +1343,9 @@ state 2 state 3 - 407) S : S_SPACE _ + 409) S : S_SPACE _ - $default reduce using rule 407 (S) + $default reduce using rule 409 (S) state 4 @@ -1754,7 +1761,7 @@ state 52 state 53 325) r_tbl_name_int : S_IDENT_NORMAL _ S_DOT ident - 406) raw_ident : S_IDENT_NORMAL _ S + 408) raw_ident : S_IDENT_NORMAL _ S S_DOT shift, and go to state 73 S_SPACE shift, and go to state 3 @@ -1773,16 +1780,16 @@ state 54 state 55 - 402) ident : raw_ident _ + 404) ident : raw_ident _ - $default reduce using rule 402 (ident) + $default reduce using rule 404 (ident) state 56 - 403) ident : S_BACKTICK_IN _ opt_ident_in_backtick S_BACKTICK_OUT S + 405) ident : S_BACKTICK_IN _ opt_ident_in_backtick S_BACKTICK_OUT S - $default reduce using rule 404 (opt_ident_in_backtick) + $default reduce using rule 406 (opt_ident_in_backtick) opt_ident_in_backtick go to state 77 @@ -1936,9 +1943,9 @@ state 73 state 74 - 406) raw_ident : S_IDENT_NORMAL S _ + 408) raw_ident : S_IDENT_NORMAL S _ - $default reduce using rule 406 (raw_ident) + $default reduce using rule 408 (raw_ident) state 75 @@ -1950,7 +1957,7 @@ state 75 state 76 - 406) raw_ident : S_IDENT_NORMAL _ S + 408) raw_ident : S_IDENT_NORMAL _ S S_SPACE shift, and go to state 3 @@ -1958,8 +1965,8 @@ state 76 state 77 - 403) ident : S_BACKTICK_IN opt_ident_in_backtick _ S_BACKTICK_OUT S - 405) opt_ident_in_backtick : opt_ident_in_backtick _ S_IDENT_IN_BACKTICK + 405) ident : S_BACKTICK_IN opt_ident_in_backtick _ S_BACKTICK_OUT S + 407) opt_ident_in_backtick : opt_ident_in_backtick _ S_IDENT_IN_BACKTICK S_BACKTICK_OUT shift, and go to state 97 S_IDENT_IN_BACKTICK shift, and go to state 98 @@ -2135,7 +2142,7 @@ state 96 state 97 - 403) ident : S_BACKTICK_IN opt_ident_in_backtick S_BACKTICK_OUT _ S + 405) ident : S_BACKTICK_IN opt_ident_in_backtick S_BACKTICK_OUT _ S S_SPACE shift, and go to state 3 @@ -2143,9 +2150,9 @@ state 97 state 98 - 405) opt_ident_in_backtick : opt_ident_in_backtick S_IDENT_IN_BACKTICK _ + 407) opt_ident_in_backtick : opt_ident_in_backtick S_IDENT_IN_BACKTICK _ - $default reduce using rule 405 (opt_ident_in_backtick) + $default reduce using rule 407 (opt_ident_in_backtick) state 99 @@ -2377,9 +2384,9 @@ state 119 state 120 - 403) ident : S_BACKTICK_IN opt_ident_in_backtick S_BACKTICK_OUT S _ + 405) ident : S_BACKTICK_IN opt_ident_in_backtick S_BACKTICK_OUT S _ - $default reduce using rule 403 (ident) + $default reduce using rule 405 (ident) state 121 @@ -5480,7 +5487,7 @@ state 451 state 452 - 401) null : NULL _ S + 403) null : NULL _ S S_SPACE shift, and go to state 3 @@ -5942,7 +5949,7 @@ state 498 state 499 - 399) nat : S_NAT _ S + 401) nat : S_NAT _ S S_SPACE shift, and go to state 3 @@ -5950,9 +5957,9 @@ state 499 state 500 - 400) nat : binary _ + 402) nat : binary _ - $default reduce using rule 400 (nat) + $default reduce using rule 402 (nat) state 501 @@ -6786,7 +6793,6 @@ state 568 S_EQUAL shift, and go to state 730 S_LEFT_PAREN shift, and go to state 726 S_RIGHT_PAREN shift, and go to state 722 - CURRENT_TIMESTAMP shift, and go to state 837 S_SINGLEQUOTE_IN shift, and go to state 721 S_SINGLEQUOTE_OUT shift, and go to state 720 S_DOUBLEQUOTE_IN shift, and go to state 732 @@ -6795,6 +6801,7 @@ state 568 S_FLOAT shift, and go to state 729 S_ZERO shift, and go to state 716 S_ONE shift, and go to state 723 + CURRENT_TIMESTAMP shift, and go to state 837 S_MINUS shift, and go to state 725 S_NAT shift, and go to state 724 NULL shift, and go to state 773 @@ -6883,13 +6890,13 @@ state 578 193) r_DEFAULT_with_val : DEFAULT S _ value - CURRENT_TIMESTAMP shift, and go to state 879 S_SINGLEQUOTE_IN shift, and go to state 129 S_DOUBLEQUOTE_IN shift, and go to state 130 S_FLOAT shift, and go to state 882 S_ZERO shift, and go to state 497 S_ONE shift, and go to state 498 - S_MINUS shift, and go to state 885 + CURRENT_TIMESTAMP shift, and go to state 885 + S_MINUS shift, and go to state 886 S_NAT shift, and go to state 499 NULL shift, and go to state 452 @@ -6897,6 +6904,7 @@ state 578 null go to state 876 number go to state 877 string go to state 878 + current_timestamp go to state 879 integer go to state 880 float go to state 881 nat go to state 883 @@ -6915,7 +6923,7 @@ state 580 195) r_UNIQUE_or_PRIMARY : UNIQUE S _ 196) r_UNIQUE_or_PRIMARY : UNIQUE S _ KEY S - KEY shift, and go to state 886 + KEY shift, and go to state 887 $default reduce using rule 195 (r_UNIQUE_or_PRIMARY) @@ -6924,7 +6932,7 @@ state 581 197) r_UNIQUE_or_PRIMARY : PRIMARY S _ 198) r_UNIQUE_or_PRIMARY : PRIMARY S _ KEY S - KEY shift, and go to state 887 + KEY shift, and go to state 888 $default reduce using rule 197 (r_UNIQUE_or_PRIMARY) @@ -6935,7 +6943,7 @@ state 582 S_SINGLEQUOTE_IN shift, and go to state 129 S_DOUBLEQUOTE_IN shift, and go to state 130 - string go to state 888 + string go to state 889 state 583 @@ -6943,9 +6951,9 @@ state 583 201) r_COLUMN_FORMAT : COLUMN_FORMAT S _ DYNAMIC S 202) r_COLUMN_FORMAT : COLUMN_FORMAT S _ DEFAULT S - DEFAULT shift, and go to state 891 - DYNAMIC shift, and go to state 890 - FIXED shift, and go to state 889 + DEFAULT shift, and go to state 892 + DYNAMIC shift, and go to state 891 + FIXED shift, and go to state 890 state 584 @@ -6954,23 +6962,23 @@ state 584 204) r_STORAGE : STORAGE S _ MEMORY S 205) r_STORAGE : STORAGE S _ DEFAULT S - DEFAULT shift, and go to state 894 - DISK shift, and go to state 892 - MEMORY shift, and go to state 893 + DEFAULT shift, and go to state 895 + DISK shift, and go to state 893 + MEMORY shift, and go to state 894 state 585 218) r_COLUMN_ON_UPDATE : ON S _ UPDATE S literal - UPDATE shift, and go to state 895 + UPDATE shift, and go to state 896 state 586 - 401) null : NULL S _ + 403) null : NULL S _ - $default reduce using rule 401 (null) + $default reduce using rule 403 (null) state 587 @@ -6988,7 +6996,7 @@ state 588 S_ONE shift, and go to state 498 S_NAT shift, and go to state 499 - nat go to state 896 + nat go to state 897 binary go to state 500 state 589 @@ -7002,10 +7010,10 @@ state 590 176) r_opt_datatype_int : r_opt_length_int _ r_opt_UNSIGNED r_opt_ZEROFILL - UNSIGNED shift, and go to state 898 + UNSIGNED shift, and go to state 899 $default reduce using rule 185 (r_opt_UNSIGNED) - r_opt_UNSIGNED go to state 897 + r_opt_UNSIGNED go to state 898 state 591 @@ -7053,10 +7061,10 @@ state 597 177) r_opt_datatype_real : r_opt_length_real _ r_opt_UNSIGNED r_opt_ZEROFILL - UNSIGNED shift, and go to state 898 + UNSIGNED shift, and go to state 899 $default reduce using rule 185 (r_opt_UNSIGNED) - r_opt_UNSIGNED go to state 899 + r_opt_UNSIGNED go to state 900 state 598 @@ -7073,7 +7081,7 @@ state 599 S_ONE shift, and go to state 498 S_NAT shift, and go to state 499 - nat go to state 900 + nat go to state 901 binary go to state 500 state 600 @@ -7113,7 +7121,7 @@ state 604 S_ONE shift, and go to state 498 S_NAT shift, and go to state 499 - nat go to state 901 + nat go to state 902 binary go to state 500 state 605 @@ -7173,7 +7181,7 @@ state 612 $default reduce using rule 189 (r_opt_BINARY) r_opt_BINARY go to state 616 - r_opt_datatype_char go to state 902 + r_opt_datatype_char go to state 903 state 613 @@ -7183,7 +7191,7 @@ state 613 $default reduce using rule 189 (r_opt_BINARY) r_opt_BINARY go to state 616 - r_opt_datatype_char go to state 903 + r_opt_datatype_char go to state 904 state 614 @@ -7203,10 +7211,10 @@ state 616 178) r_opt_datatype_char : r_opt_BINARY _ r_opt_CHARACTER_SET_with_val opt_COLLATE_with_val - L_CHARACTER_SET shift, and go to state 905 + L_CHARACTER_SET shift, and go to state 906 $default reduce using rule 229 (r_opt_CHARACTER_SET_with_val) - r_opt_CHARACTER_SET_with_val go to state 904 + r_opt_CHARACTER_SET_with_val go to state 905 state 617 @@ -7214,7 +7222,7 @@ state 617 S_SPACE shift, and go to state 3 - S go to state 906 + S go to state 907 state 618 @@ -7251,8 +7259,8 @@ state 622 S_SINGLEQUOTE_IN shift, and go to state 129 S_DOUBLEQUOTE_IN shift, and go to state 130 - string go to state 907 - r_comma_separated_string go to state 908 + string go to state 908 + r_comma_separated_string go to state 909 state 623 @@ -7261,8 +7269,8 @@ state 623 S_SINGLEQUOTE_IN shift, and go to state 129 S_DOUBLEQUOTE_IN shift, and go to state 130 - string go to state 907 - r_comma_separated_string go to state 909 + string go to state 908 + r_comma_separated_string go to state 910 state 624 @@ -7270,7 +7278,7 @@ state 624 S_SPACE shift, and go to state 3 - S go to state 910 + S go to state 911 state 625 @@ -7280,7 +7288,7 @@ state 625 S_BACKTICK_IN shift, and go to state 56 $default reduce using rule 141 (r_opt_index_name) - r_opt_index_name go to state 911 + r_opt_index_name go to state 912 r_index_name go to state 347 ident go to state 95 raw_ident go to state 55 @@ -7291,7 +7299,7 @@ state 626 S_SPACE shift, and go to state 3 - S go to state 912 + S go to state 913 state 627 @@ -7300,9 +7308,9 @@ state 627 S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_comma_separated_index_col_name go to state 913 - r_index_col_name go to state 914 - r_col_name go to state 915 + r_comma_separated_index_col_name go to state 914 + r_index_col_name go to state 915 + r_col_name go to state 916 ident go to state 234 raw_ident go to state 55 @@ -7313,7 +7321,7 @@ state 628 USING shift, and go to state 172 $default reduce using rule 143 (r_opt_index_type) - r_alter_index_opt go to state 916 + r_alter_index_opt go to state 917 r_opt_index_type go to state 488 r_index_type go to state 171 @@ -7324,7 +7332,7 @@ state 629 USING shift, and go to state 172 $default reduce using rule 143 (r_opt_index_type) - r_alter_index_opt go to state 917 + r_alter_index_opt go to state 918 r_opt_index_type go to state 488 r_index_type go to state 171 @@ -7335,7 +7343,7 @@ state 630 S_SINGLEQUOTE_IN shift, and go to state 129 S_DOUBLEQUOTE_IN shift, and go to state 130 - string go to state 918 + string go to state 919 state 631 @@ -7344,7 +7352,7 @@ state 631 S_SINGLEQUOTE_IN shift, and go to state 129 S_DOUBLEQUOTE_IN shift, and go to state 130 - string go to state 919 + string go to state 920 state 632 @@ -7362,9 +7370,9 @@ state 633 state 634 - 399) nat : S_NAT S _ + 401) nat : S_NAT S _ - $default reduce using rule 399 (nat) + $default reduce using rule 401 (nat) state 635 @@ -7443,9 +7451,9 @@ state 645 243) r_opt_STORAGE_option : STORAGE S _ MEMORY S 244) r_opt_STORAGE_option : STORAGE S _ DEFAULT S - DEFAULT shift, and go to state 922 - DISK shift, and go to state 920 - MEMORY shift, and go to state 921 + DEFAULT shift, and go to state 923 + DISK shift, and go to state 921 + MEMORY shift, and go to state 922 state 646 @@ -7456,7 +7464,7 @@ state 646 S_DOT shift, and go to state 54 S_BACKTICK_IN shift, and go to state 56 - r_comma_separated_tbl_name go to state 923 + r_comma_separated_tbl_name go to state 924 r_tbl_name go to state 118 r_tbl_name_int go to state 51 ident go to state 52 @@ -7489,7 +7497,7 @@ state 650 S_SPACE shift, and go to state 3 - S go to state 924 + S go to state 925 state 651 @@ -7497,7 +7505,7 @@ state 651 S_SPACE shift, and go to state 3 - S go to state 925 + S go to state 926 state 652 @@ -7505,7 +7513,7 @@ state 652 S_SPACE shift, and go to state 3 - S go to state 926 + S go to state 927 state 653 @@ -7513,7 +7521,7 @@ state 653 S_SPACE shift, and go to state 3 - S go to state 927 + S go to state 928 state 654 @@ -7536,9 +7544,9 @@ state 656 S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_comma_separated_index_col_name go to state 928 - r_index_col_name go to state 914 - r_col_name go to state 915 + r_comma_separated_index_col_name go to state 929 + r_index_col_name go to state 915 + r_col_name go to state 916 ident go to state 234 raw_ident go to state 55 @@ -7549,7 +7557,7 @@ state 657 S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_comma_separated_col_name go to state 929 + r_comma_separated_col_name go to state 930 r_col_name go to state 417 ident go to state 234 raw_ident go to state 55 @@ -7558,11 +7566,11 @@ state 658 77) r_alter_specification : ADD S r_opt_COLUMN r_col_name r_column_definition _ r_opt_pos_column - FIRST shift, and go to state 931 - AFTER shift, and go to state 932 + FIRST shift, and go to state 932 + AFTER shift, and go to state 933 $default reduce using rule 233 (r_opt_pos_column) - r_opt_pos_column go to state 930 + r_opt_pos_column go to state 931 state 659 @@ -7572,8 +7580,8 @@ state 659 S_COMMA shift, and go to state 115 S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 933 - comma go to state 934 + right_paren go to state 934 + comma go to state 935 state 660 @@ -7586,9 +7594,9 @@ state 661 122) r_single_alter_specification : ADD S PARTITION S left_paren _ r_partition_definition right_paren - PARTITION shift, and go to state 936 + PARTITION shift, and go to state 937 - r_partition_definition go to state 935 + r_partition_definition go to state 936 state 662 @@ -7603,7 +7611,7 @@ state 663 S_SPACE shift, and go to state 3 - S go to state 937 + S go to state 938 state 664 @@ -7611,7 +7619,7 @@ state 664 S_SPACE shift, and go to state 3 - S go to state 938 + S go to state 939 state 665 @@ -7650,7 +7658,7 @@ state 665 LONGTEXT shift, and go to state 339 ENUM shift, and go to state 341 - r_column_definition go to state 939 + r_column_definition go to state 940 r_datatype go to state 310 raw_ident go to state 342 @@ -7660,7 +7668,7 @@ state 666 S_SPACE shift, and go to state 3 - S go to state 940 + S go to state 941 state 667 @@ -7668,7 +7676,7 @@ state 667 S_SPACE shift, and go to state 3 - S go to state 941 + S go to state 942 state 668 @@ -7678,7 +7686,7 @@ state 668 S_COMMA shift, and go to state 115 $default reduce using rule 123 (r_single_alter_specification) - comma go to state 942 + comma go to state 943 state 669 @@ -7700,7 +7708,7 @@ state 671 S_SPACE shift, and go to state 3 - S go to state 943 + S go to state 944 state 672 @@ -7713,11 +7721,11 @@ state 673 90) r_alter_specification : MODIFY S r_opt_COLUMN r_col_name r_column_definition _ r_opt_pos_column - FIRST shift, and go to state 931 - AFTER shift, and go to state 932 + FIRST shift, and go to state 932 + AFTER shift, and go to state 933 $default reduce using rule 233 (r_opt_pos_column) - r_opt_pos_column go to state 944 + r_opt_pos_column go to state 945 state 674 @@ -7732,7 +7740,7 @@ state 675 S_SPACE shift, and go to state 3 - S go to state 945 + S go to state 946 state 676 @@ -7742,7 +7750,7 @@ state 676 S_COMMA shift, and go to state 115 $default reduce using rule 278 (r_partition_name_list_or_ALL) - comma go to state 942 + comma go to state 943 state 677 @@ -7798,15 +7806,15 @@ state 684 276) r_opt_partition_names_INTO_definitions : r_comma_separated_partition_name _ INTO S left_paren r_comma_separated_partition_definition right_paren 293) r_comma_separated_partition_name : r_comma_separated_partition_name _ comma r_partition_name - INTO shift, and go to state 946 + INTO shift, and go to state 947 S_COMMA shift, and go to state 115 - comma go to state 942 + comma go to state 943 state 685 10) r_CREATE_VIEW : CREATE S r_opt_OR_REPLACE r_opt_ALGORITHM_with_val r_opt_DEFINER_with_val r_opt_SQL_SECURITY VIEW S r_view_name r_opt_COLUMN_list AS S star _ - 409) star : star _ dot + 411) star : star _ dot CREATE shift, and go to state 838 VIEW shift, and go to state 690 @@ -7973,7 +7981,6 @@ state 685 S_EQUAL shift, and go to state 730 S_LEFT_PAREN shift, and go to state 726 S_RIGHT_PAREN shift, and go to state 722 - CURRENT_TIMESTAMP shift, and go to state 837 S_SINGLEQUOTE_IN shift, and go to state 721 S_SINGLEQUOTE_OUT shift, and go to state 720 S_DOUBLEQUOTE_IN shift, and go to state 732 @@ -7982,6 +7989,7 @@ state 685 S_FLOAT shift, and go to state 729 S_ZERO shift, and go to state 716 S_ONE shift, and go to state 723 + CURRENT_TIMESTAMP shift, and go to state 837 S_MINUS shift, and go to state 725 S_NAT shift, and go to state 724 NULL shift, and go to state 773 @@ -7995,1308 +8003,1308 @@ state 685 CASCADED shift, and go to state 853 $default reduce using rule 10 (r_CREATE_VIEW) - dot go to state 947 + dot go to state 948 state 686 - 408) star : dot _ + 410) star : dot _ - $default reduce using rule 408 (star) + $default reduce using rule 410 (star) state 687 - 410) dot : ZEROFILL _ + 412) dot : ZEROFILL _ - $default reduce using rule 410 (dot) + $default reduce using rule 412 (dot) state 688 - 411) dot : YEAR _ + 413) dot : YEAR _ - $default reduce using rule 411 (dot) + $default reduce using rule 413 (dot) state 689 - 412) dot : WITH _ + 414) dot : WITH _ - $default reduce using rule 412 (dot) + $default reduce using rule 414 (dot) state 690 - 413) dot : VIEW _ + 415) dot : VIEW _ - $default reduce using rule 413 (dot) + $default reduce using rule 415 (dot) state 691 - 414) dot : VARCHAR _ + 416) dot : VARCHAR _ - $default reduce using rule 414 (dot) + $default reduce using rule 416 (dot) state 692 - 415) dot : VARBINARY _ + 417) dot : VARBINARY _ - $default reduce using rule 415 (dot) + $default reduce using rule 417 (dot) state 693 - 416) dot : VALUES _ + 418) dot : VALUES _ - $default reduce using rule 416 (dot) + $default reduce using rule 418 (dot) state 694 - 417) dot : UTF8MB4 _ + 419) dot : UTF8MB4 _ - $default reduce using rule 417 (dot) + $default reduce using rule 419 (dot) state 695 - 418) dot : UTF8MB3 _ + 420) dot : UTF8MB3 _ - $default reduce using rule 418 (dot) + $default reduce using rule 420 (dot) state 696 - 419) dot : UTF8 _ + 421) dot : UTF8 _ - $default reduce using rule 419 (dot) + $default reduce using rule 421 (dot) state 697 - 420) dot : USING _ + 422) dot : USING _ - $default reduce using rule 420 (dot) + $default reduce using rule 422 (dot) state 698 - 421) dot : UPDATE _ + 423) dot : UPDATE _ - $default reduce using rule 421 (dot) + $default reduce using rule 423 (dot) state 699 - 422) dot : UNSIGNED _ + 424) dot : UNSIGNED _ - $default reduce using rule 422 (dot) + $default reduce using rule 424 (dot) state 700 - 423) dot : UNIQUE _ + 425) dot : UNIQUE _ - $default reduce using rule 423 (dot) + $default reduce using rule 425 (dot) state 701 - 424) dot : UNION _ + 426) dot : UNION _ - $default reduce using rule 424 (dot) + $default reduce using rule 426 (dot) state 702 - 425) dot : UNDEFINED _ + 427) dot : UNDEFINED _ - $default reduce using rule 425 (dot) + $default reduce using rule 427 (dot) state 703 - 426) dot : TRUNCATE _ + 428) dot : TRUNCATE _ - $default reduce using rule 426 (dot) + $default reduce using rule 428 (dot) state 704 - 427) dot : TO _ + 429) dot : TO _ - $default reduce using rule 427 (dot) + $default reduce using rule 429 (dot) state 705 - 428) dot : TINYTEXT _ + 430) dot : TINYTEXT _ - $default reduce using rule 428 (dot) + $default reduce using rule 430 (dot) state 706 - 429) dot : TINYINT _ + 431) dot : TINYINT _ - $default reduce using rule 429 (dot) + $default reduce using rule 431 (dot) state 707 - 430) dot : TINYBLOB _ + 432) dot : TINYBLOB _ - $default reduce using rule 430 (dot) + $default reduce using rule 432 (dot) state 708 - 431) dot : TIMESTAMP _ + 433) dot : TIMESTAMP _ - $default reduce using rule 431 (dot) + $default reduce using rule 433 (dot) state 709 - 432) dot : TIME _ + 434) dot : TIME _ - $default reduce using rule 432 (dot) + $default reduce using rule 434 (dot) state 710 - 433) dot : THAN _ + 435) dot : THAN _ - $default reduce using rule 433 (dot) + $default reduce using rule 435 (dot) state 711 - 434) dot : TEXT _ + 436) dot : TEXT _ - $default reduce using rule 434 (dot) + $default reduce using rule 436 (dot) state 712 - 435) dot : TEMPTABLE _ + 437) dot : TEMPTABLE _ - $default reduce using rule 435 (dot) + $default reduce using rule 437 (dot) state 713 - 436) dot : TEMPORARY _ + 438) dot : TEMPORARY _ - $default reduce using rule 436 (dot) + $default reduce using rule 438 (dot) state 714 - 437) dot : TABLESPACE _ + 439) dot : TABLESPACE _ - $default reduce using rule 437 (dot) + $default reduce using rule 439 (dot) state 715 - 438) dot : TABLE _ + 440) dot : TABLE _ - $default reduce using rule 438 (dot) + $default reduce using rule 440 (dot) state 716 - 439) dot : S_ZERO _ + 441) dot : S_ZERO _ - $default reduce using rule 439 (dot) + $default reduce using rule 441 (dot) state 717 - 440) dot : S_STRING_IN_SINGLEQUOTE _ + 442) dot : S_STRING_IN_SINGLEQUOTE _ - $default reduce using rule 440 (dot) + $default reduce using rule 442 (dot) state 718 - 441) dot : S_STRING_IN_QUOTE _ + 443) dot : S_STRING_IN_QUOTE _ - $default reduce using rule 441 (dot) + $default reduce using rule 443 (dot) state 719 - 442) dot : S_SPACE _ + 444) dot : S_SPACE _ - $default reduce using rule 442 (dot) + $default reduce using rule 444 (dot) state 720 - 443) dot : S_SINGLEQUOTE_OUT _ + 445) dot : S_SINGLEQUOTE_OUT _ - $default reduce using rule 443 (dot) + $default reduce using rule 445 (dot) state 721 - 444) dot : S_SINGLEQUOTE_IN _ + 446) dot : S_SINGLEQUOTE_IN _ - $default reduce using rule 444 (dot) + $default reduce using rule 446 (dot) state 722 - 445) dot : S_RIGHT_PAREN _ + 447) dot : S_RIGHT_PAREN _ - $default reduce using rule 445 (dot) + $default reduce using rule 447 (dot) state 723 - 446) dot : S_ONE _ + 448) dot : S_ONE _ - $default reduce using rule 446 (dot) + $default reduce using rule 448 (dot) state 724 - 447) dot : S_NAT _ + 449) dot : S_NAT _ - $default reduce using rule 447 (dot) + $default reduce using rule 449 (dot) state 725 - 448) dot : S_MINUS _ + 450) dot : S_MINUS _ - $default reduce using rule 448 (dot) + $default reduce using rule 450 (dot) state 726 - 449) dot : S_LEFT_PAREN _ + 451) dot : S_LEFT_PAREN _ - $default reduce using rule 449 (dot) + $default reduce using rule 451 (dot) state 727 - 450) dot : S_IDENT_NORMAL _ + 452) dot : S_IDENT_NORMAL _ - $default reduce using rule 450 (dot) + $default reduce using rule 452 (dot) state 728 - 451) dot : S_IDENT_IN_BACKTICK _ + 453) dot : S_IDENT_IN_BACKTICK _ - $default reduce using rule 451 (dot) + $default reduce using rule 453 (dot) state 729 - 452) dot : S_FLOAT _ + 454) dot : S_FLOAT _ - $default reduce using rule 452 (dot) + $default reduce using rule 454 (dot) state 730 - 453) dot : S_EQUAL _ + 455) dot : S_EQUAL _ - $default reduce using rule 453 (dot) + $default reduce using rule 455 (dot) state 731 - 454) dot : S_DOUBLEQUOTE_OUT _ + 456) dot : S_DOUBLEQUOTE_OUT _ - $default reduce using rule 454 (dot) + $default reduce using rule 456 (dot) state 732 - 455) dot : S_DOUBLEQUOTE_IN _ + 457) dot : S_DOUBLEQUOTE_IN _ - $default reduce using rule 455 (dot) + $default reduce using rule 457 (dot) state 733 - 456) dot : S_DOT _ + 458) dot : S_DOT _ - $default reduce using rule 456 (dot) + $default reduce using rule 458 (dot) state 734 - 457) dot : S_COMMA _ + 459) dot : S_COMMA _ - $default reduce using rule 457 (dot) + $default reduce using rule 459 (dot) state 735 - 458) dot : S_BACKTICK_OUT _ + 460) dot : S_BACKTICK_OUT _ - $default reduce using rule 458 (dot) + $default reduce using rule 460 (dot) state 736 - 459) dot : S_BACKTICK_IN _ + 461) dot : S_BACKTICK_IN _ - $default reduce using rule 459 (dot) + $default reduce using rule 461 (dot) state 737 - 460) dot : S_AT _ + 462) dot : S_AT _ - $default reduce using rule 460 (dot) + $default reduce using rule 462 (dot) state 738 - 461) dot : SUBPARTITION _ + 463) dot : SUBPARTITION _ - $default reduce using rule 461 (dot) + $default reduce using rule 463 (dot) state 739 - 462) dot : STORAGE _ + 464) dot : STORAGE _ - $default reduce using rule 462 (dot) + $default reduce using rule 464 (dot) state 740 - 463) dot : SQL _ + 465) dot : SQL _ - $default reduce using rule 463 (dot) + $default reduce using rule 465 (dot) state 741 - 464) dot : SPATIAL _ + 466) dot : SPATIAL _ - $default reduce using rule 464 (dot) + $default reduce using rule 466 (dot) state 742 - 465) dot : SMALLINT _ + 467) dot : SMALLINT _ - $default reduce using rule 465 (dot) + $default reduce using rule 467 (dot) state 743 - 466) dot : SIMPLE _ + 468) dot : SIMPLE _ - $default reduce using rule 466 (dot) + $default reduce using rule 468 (dot) state 744 - 467) dot : SET _ + 469) dot : SET _ - $default reduce using rule 467 (dot) + $default reduce using rule 469 (dot) state 745 - 468) dot : SELECT _ + 470) dot : SELECT _ - $default reduce using rule 468 (dot) + $default reduce using rule 470 (dot) state 746 - 469) dot : SECURITY _ + 471) dot : SECURITY _ - $default reduce using rule 469 (dot) + $default reduce using rule 471 (dot) state 747 - 470) dot : ROW_FORMAT _ + 472) dot : ROW_FORMAT _ - $default reduce using rule 470 (dot) + $default reduce using rule 472 (dot) state 748 - 471) dot : RESTRICT _ + 473) dot : RESTRICT _ - $default reduce using rule 471 (dot) + $default reduce using rule 473 (dot) state 749 - 472) dot : REPLACE _ + 474) dot : REPLACE _ - $default reduce using rule 472 (dot) + $default reduce using rule 474 (dot) state 750 - 473) dot : REPAIR _ + 475) dot : REPAIR _ - $default reduce using rule 473 (dot) + $default reduce using rule 475 (dot) state 751 - 474) dot : REORGANIZE _ + 476) dot : REORGANIZE _ - $default reduce using rule 474 (dot) + $default reduce using rule 476 (dot) state 752 - 475) dot : RENAME _ + 477) dot : RENAME _ - $default reduce using rule 475 (dot) + $default reduce using rule 477 (dot) state 753 - 476) dot : REMOVE _ + 478) dot : REMOVE _ - $default reduce using rule 476 (dot) + $default reduce using rule 478 (dot) state 754 - 477) dot : REFERENCES _ + 479) dot : REFERENCES _ - $default reduce using rule 477 (dot) + $default reduce using rule 479 (dot) state 755 - 478) dot : REDUNDANT _ + 480) dot : REDUNDANT _ - $default reduce using rule 478 (dot) + $default reduce using rule 480 (dot) state 756 - 479) dot : REBUILD _ + 481) dot : REBUILD _ - $default reduce using rule 479 (dot) + $default reduce using rule 481 (dot) state 757 - 480) dot : REAL _ + 482) dot : REAL _ - $default reduce using rule 480 (dot) + $default reduce using rule 482 (dot) state 758 - 481) dot : PRIMARY _ + 483) dot : PRIMARY _ - $default reduce using rule 481 (dot) + $default reduce using rule 483 (dot) state 759 - 482) dot : PASSWORD _ + 484) dot : PASSWORD _ - $default reduce using rule 482 (dot) + $default reduce using rule 484 (dot) state 760 - 483) dot : PARTITIONING _ + 485) dot : PARTITIONING _ - $default reduce using rule 483 (dot) + $default reduce using rule 485 (dot) state 761 - 484) dot : PARTITION _ + 486) dot : PARTITION _ - $default reduce using rule 484 (dot) + $default reduce using rule 486 (dot) state 762 - 485) dot : PARTIAL _ + 487) dot : PARTIAL _ - $default reduce using rule 485 (dot) + $default reduce using rule 487 (dot) state 763 - 486) dot : PARSER _ + 488) dot : PARSER _ - $default reduce using rule 486 (dot) + $default reduce using rule 488 (dot) state 764 - 487) dot : PACK_KEYS _ + 489) dot : PACK_KEYS _ - $default reduce using rule 487 (dot) + $default reduce using rule 489 (dot) state 765 - 488) dot : ORDER _ + 490) dot : ORDER _ - $default reduce using rule 488 (dot) + $default reduce using rule 490 (dot) state 766 - 489) dot : OR _ + 491) dot : OR _ - $default reduce using rule 489 (dot) + $default reduce using rule 491 (dot) state 767 - 490) dot : OPTION _ + 492) dot : OPTION _ - $default reduce using rule 490 (dot) + $default reduce using rule 492 (dot) state 768 - 491) dot : OPTIMIZE _ + 493) dot : OPTIMIZE _ - $default reduce using rule 491 (dot) + $default reduce using rule 493 (dot) state 769 - 492) dot : ONLINE _ + 494) dot : ONLINE _ - $default reduce using rule 492 (dot) + $default reduce using rule 494 (dot) state 770 - 493) dot : ON _ + 495) dot : ON _ - $default reduce using rule 493 (dot) + $default reduce using rule 495 (dot) state 771 - 494) dot : OFFLINE _ + 496) dot : OFFLINE _ - $default reduce using rule 494 (dot) + $default reduce using rule 496 (dot) state 772 - 495) dot : NUMERIC _ + 497) dot : NUMERIC _ - $default reduce using rule 495 (dot) + $default reduce using rule 497 (dot) state 773 - 496) dot : NULL _ + 498) dot : NULL _ - $default reduce using rule 496 (dot) + $default reduce using rule 498 (dot) state 774 - 497) dot : NOT _ + 499) dot : NOT _ - $default reduce using rule 497 (dot) + $default reduce using rule 499 (dot) state 775 - 498) dot : NODEGROUP _ + 500) dot : NODEGROUP _ - $default reduce using rule 498 (dot) + $default reduce using rule 500 (dot) state 776 - 499) dot : NO _ + 501) dot : NO _ - $default reduce using rule 499 (dot) + $default reduce using rule 501 (dot) state 777 - 500) dot : MODIFY _ + 502) dot : MODIFY _ - $default reduce using rule 500 (dot) + $default reduce using rule 502 (dot) state 778 - 501) dot : MIN_ROWS _ + 503) dot : MIN_ROWS _ - $default reduce using rule 501 (dot) + $default reduce using rule 503 (dot) state 779 - 502) dot : MERGE _ + 504) dot : MERGE _ - $default reduce using rule 502 (dot) + $default reduce using rule 504 (dot) state 780 - 503) dot : MEMORY _ + 505) dot : MEMORY _ - $default reduce using rule 503 (dot) + $default reduce using rule 505 (dot) state 781 - 504) dot : MEDIUMTEXT _ + 506) dot : MEDIUMTEXT _ - $default reduce using rule 504 (dot) + $default reduce using rule 506 (dot) state 782 - 505) dot : MEDIUMINT _ + 507) dot : MEDIUMINT _ - $default reduce using rule 505 (dot) + $default reduce using rule 507 (dot) state 783 - 506) dot : MEDIUMBLOB _ + 508) dot : MEDIUMBLOB _ - $default reduce using rule 506 (dot) + $default reduce using rule 508 (dot) state 784 - 507) dot : MAX_ROWS _ + 509) dot : MAX_ROWS _ - $default reduce using rule 507 (dot) + $default reduce using rule 509 (dot) state 785 - 508) dot : MAXVALUE _ + 510) dot : MAXVALUE _ - $default reduce using rule 508 (dot) + $default reduce using rule 510 (dot) state 786 - 509) dot : MATCH _ + 511) dot : MATCH _ - $default reduce using rule 509 (dot) + $default reduce using rule 511 (dot) state 787 - 510) dot : L_CHARACTER_SET _ + 512) dot : L_CHARACTER_SET _ - $default reduce using rule 510 (dot) + $default reduce using rule 512 (dot) state 788 - 511) dot : LONGTEXT _ + 513) dot : LONGTEXT _ - $default reduce using rule 511 (dot) + $default reduce using rule 513 (dot) state 789 - 512) dot : LONGBLOB _ + 514) dot : LONGBLOB _ - $default reduce using rule 512 (dot) + $default reduce using rule 514 (dot) state 790 - 513) dot : LOCAL _ + 515) dot : LOCAL _ - $default reduce using rule 513 (dot) + $default reduce using rule 515 (dot) state 791 - 514) dot : LIKE _ + 516) dot : LIKE _ - $default reduce using rule 514 (dot) + $default reduce using rule 516 (dot) state 792 - 515) dot : LESS _ + 517) dot : LESS _ - $default reduce using rule 515 (dot) + $default reduce using rule 517 (dot) state 793 - 516) dot : LATIN1 _ + 518) dot : LATIN1 _ - $default reduce using rule 516 (dot) + $default reduce using rule 518 (dot) state 794 - 517) dot : LAST _ + 519) dot : LAST _ - $default reduce using rule 517 (dot) + $default reduce using rule 519 (dot) state 795 - 518) dot : KEY_BLOCK_SIZE _ + 520) dot : KEY_BLOCK_SIZE _ - $default reduce using rule 518 (dot) + $default reduce using rule 520 (dot) state 796 - 519) dot : KEYS _ + 521) dot : KEYS _ - $default reduce using rule 519 (dot) + $default reduce using rule 521 (dot) state 797 - 520) dot : KEY _ + 522) dot : KEY _ - $default reduce using rule 520 (dot) + $default reduce using rule 522 (dot) state 798 - 521) dot : INVOKER _ + 523) dot : INVOKER _ - $default reduce using rule 521 (dot) + $default reduce using rule 523 (dot) state 799 - 522) dot : INTO _ + 524) dot : INTO _ - $default reduce using rule 522 (dot) + $default reduce using rule 524 (dot) state 800 - 523) dot : INTEGER _ + 525) dot : INTEGER _ - $default reduce using rule 523 (dot) + $default reduce using rule 525 (dot) state 801 - 524) dot : INT _ + 526) dot : INT _ - $default reduce using rule 524 (dot) + $default reduce using rule 526 (dot) state 802 - 525) dot : INSERT_METHOD _ + 527) dot : INSERT_METHOD _ - $default reduce using rule 525 (dot) + $default reduce using rule 527 (dot) state 803 - 526) dot : INNODB _ + 528) dot : INNODB _ - $default reduce using rule 526 (dot) + $default reduce using rule 528 (dot) state 804 - 527) dot : INDEX _ + 529) dot : INDEX _ - $default reduce using rule 527 (dot) + $default reduce using rule 529 (dot) state 805 - 528) dot : IN _ + 530) dot : IN _ - $default reduce using rule 528 (dot) + $default reduce using rule 530 (dot) state 806 - 529) dot : IMPORT _ + 531) dot : IMPORT _ - $default reduce using rule 529 (dot) + $default reduce using rule 531 (dot) state 807 - 530) dot : IGNORE _ + 532) dot : IGNORE _ - $default reduce using rule 530 (dot) + $default reduce using rule 532 (dot) state 808 - 531) dot : IF _ + 533) dot : IF _ - $default reduce using rule 531 (dot) + $default reduce using rule 533 (dot) state 809 - 532) dot : HASH _ + 534) dot : HASH _ - $default reduce using rule 532 (dot) + $default reduce using rule 534 (dot) state 810 - 533) dot : FULLTEXT _ + 535) dot : FULLTEXT _ - $default reduce using rule 533 (dot) + $default reduce using rule 535 (dot) state 811 - 534) dot : FULL _ + 536) dot : FULL _ - $default reduce using rule 534 (dot) + $default reduce using rule 536 (dot) state 812 - 535) dot : FOREIGN _ + 537) dot : FOREIGN _ - $default reduce using rule 535 (dot) + $default reduce using rule 537 (dot) state 813 - 536) dot : FLOAT _ + 538) dot : FLOAT _ - $default reduce using rule 536 (dot) + $default reduce using rule 538 (dot) state 814 - 537) dot : FIXED _ + 539) dot : FIXED _ - $default reduce using rule 537 (dot) + $default reduce using rule 539 (dot) state 815 - 538) dot : FIRST _ + 540) dot : FIRST _ - $default reduce using rule 538 (dot) + $default reduce using rule 540 (dot) state 816 - 539) dot : EXISTS _ + 541) dot : EXISTS _ - $default reduce using rule 539 (dot) + $default reduce using rule 541 (dot) state 817 - 540) dot : ENUM _ + 542) dot : ENUM _ - $default reduce using rule 540 (dot) + $default reduce using rule 542 (dot) state 818 - 541) dot : ENGINE _ + 543) dot : ENGINE _ - $default reduce using rule 541 (dot) + $default reduce using rule 543 (dot) state 819 - 542) dot : ENABLE _ + 544) dot : ENABLE _ - $default reduce using rule 542 (dot) + $default reduce using rule 544 (dot) state 820 - 543) dot : DYNAMIC _ + 545) dot : DYNAMIC _ - $default reduce using rule 543 (dot) + $default reduce using rule 545 (dot) state 821 - 544) dot : DROP _ + 546) dot : DROP _ - $default reduce using rule 544 (dot) + $default reduce using rule 546 (dot) state 822 - 545) dot : DOUBLE _ + 547) dot : DOUBLE _ - $default reduce using rule 545 (dot) + $default reduce using rule 547 (dot) state 823 - 546) dot : DISK _ + 548) dot : DISK _ - $default reduce using rule 546 (dot) + $default reduce using rule 548 (dot) state 824 - 547) dot : DISCARD _ + 549) dot : DISCARD _ - $default reduce using rule 547 (dot) + $default reduce using rule 549 (dot) state 825 - 548) dot : DISABLE _ + 550) dot : DISABLE _ - $default reduce using rule 548 (dot) + $default reduce using rule 550 (dot) state 826 - 549) dot : DIRECTORY _ + 551) dot : DIRECTORY _ - $default reduce using rule 549 (dot) + $default reduce using rule 551 (dot) state 827 - 550) dot : DESC _ + 552) dot : DESC _ - $default reduce using rule 550 (dot) + $default reduce using rule 552 (dot) state 828 - 551) dot : DELETE _ + 553) dot : DELETE _ - $default reduce using rule 551 (dot) + $default reduce using rule 553 (dot) state 829 - 552) dot : DELAY_KEY_WRITE _ + 554) dot : DELAY_KEY_WRITE _ - $default reduce using rule 552 (dot) + $default reduce using rule 554 (dot) state 830 - 553) dot : DEFINER _ + 555) dot : DEFINER _ - $default reduce using rule 553 (dot) + $default reduce using rule 555 (dot) state 831 - 554) dot : DEFAULT _ + 556) dot : DEFAULT _ - $default reduce using rule 554 (dot) + $default reduce using rule 556 (dot) state 832 - 555) dot : DECIMAL _ + 557) dot : DECIMAL _ - $default reduce using rule 555 (dot) + $default reduce using rule 557 (dot) state 833 - 556) dot : DATETIME _ + 558) dot : DATETIME _ - $default reduce using rule 556 (dot) + $default reduce using rule 558 (dot) state 834 - 557) dot : DATE _ + 559) dot : DATE _ - $default reduce using rule 557 (dot) + $default reduce using rule 559 (dot) state 835 - 558) dot : DATA _ + 560) dot : DATA _ - $default reduce using rule 558 (dot) + $default reduce using rule 560 (dot) state 836 - 559) dot : CURRENT_USER _ + 561) dot : CURRENT_USER _ - $default reduce using rule 559 (dot) + $default reduce using rule 561 (dot) state 837 - 560) dot : CURRENT_TIMESTAMP _ + 562) dot : CURRENT_TIMESTAMP _ - $default reduce using rule 560 (dot) + $default reduce using rule 562 (dot) state 838 - 561) dot : CREATE _ + 563) dot : CREATE _ - $default reduce using rule 561 (dot) + $default reduce using rule 563 (dot) state 839 - 562) dot : CONVERT _ + 564) dot : CONVERT _ - $default reduce using rule 562 (dot) + $default reduce using rule 564 (dot) state 840 - 563) dot : CONSTRAINT _ + 565) dot : CONSTRAINT _ - $default reduce using rule 563 (dot) + $default reduce using rule 565 (dot) state 841 - 564) dot : CONNECTION _ + 566) dot : CONNECTION _ - $default reduce using rule 564 (dot) + $default reduce using rule 566 (dot) state 842 - 565) dot : COMPRESSED _ + 567) dot : COMPRESSED _ - $default reduce using rule 565 (dot) + $default reduce using rule 567 (dot) state 843 - 566) dot : COMPACT _ + 568) dot : COMPACT _ - $default reduce using rule 566 (dot) + $default reduce using rule 568 (dot) state 844 - 567) dot : COMMENT _ + 569) dot : COMMENT _ - $default reduce using rule 567 (dot) + $default reduce using rule 569 (dot) state 845 - 568) dot : COLUMN_FORMAT _ + 570) dot : COLUMN_FORMAT _ - $default reduce using rule 568 (dot) + $default reduce using rule 570 (dot) state 846 - 569) dot : COLUMN _ + 571) dot : COLUMN _ - $default reduce using rule 569 (dot) + $default reduce using rule 571 (dot) state 847 - 570) dot : COLLATE _ + 572) dot : COLLATE _ - $default reduce using rule 570 (dot) + $default reduce using rule 572 (dot) state 848 - 571) dot : COALESCE _ + 573) dot : COALESCE _ - $default reduce using rule 571 (dot) + $default reduce using rule 573 (dot) state 849 - 572) dot : CHECKSUM _ + 574) dot : CHECKSUM _ - $default reduce using rule 572 (dot) + $default reduce using rule 574 (dot) state 850 - 573) dot : CHECK _ + 575) dot : CHECK _ - $default reduce using rule 573 (dot) + $default reduce using rule 575 (dot) state 851 - 574) dot : CHAR _ + 576) dot : CHAR _ - $default reduce using rule 574 (dot) + $default reduce using rule 576 (dot) state 852 - 575) dot : CHANGE _ + 577) dot : CHANGE _ - $default reduce using rule 575 (dot) + $default reduce using rule 577 (dot) state 853 - 576) dot : CASCADED _ + 578) dot : CASCADED _ - $default reduce using rule 576 (dot) + $default reduce using rule 578 (dot) state 854 - 577) dot : CASCADE _ + 579) dot : CASCADE _ - $default reduce using rule 577 (dot) + $default reduce using rule 579 (dot) state 855 - 578) dot : BY _ + 580) dot : BY _ - $default reduce using rule 578 (dot) + $default reduce using rule 580 (dot) state 856 - 579) dot : BTREE _ + 581) dot : BTREE _ - $default reduce using rule 579 (dot) + $default reduce using rule 581 (dot) state 857 - 580) dot : BLOB _ + 582) dot : BLOB _ - $default reduce using rule 580 (dot) + $default reduce using rule 582 (dot) state 858 - 581) dot : BIT _ + 583) dot : BIT _ - $default reduce using rule 581 (dot) + $default reduce using rule 583 (dot) state 859 - 582) dot : BINARY _ + 584) dot : BINARY _ - $default reduce using rule 582 (dot) + $default reduce using rule 584 (dot) state 860 - 583) dot : BIGINT _ + 585) dot : BIGINT _ - $default reduce using rule 583 (dot) + $default reduce using rule 585 (dot) state 861 - 584) dot : AVG_ROW_LENGTH _ + 586) dot : AVG_ROW_LENGTH _ - $default reduce using rule 584 (dot) + $default reduce using rule 586 (dot) state 862 - 585) dot : AUTO_INCREMENT _ + 587) dot : AUTO_INCREMENT _ - $default reduce using rule 585 (dot) + $default reduce using rule 587 (dot) state 863 - 586) dot : ASC _ + 588) dot : ASC _ - $default reduce using rule 586 (dot) + $default reduce using rule 588 (dot) state 864 - 587) dot : AS _ + 589) dot : AS _ - $default reduce using rule 587 (dot) + $default reduce using rule 589 (dot) state 865 - 588) dot : ANALYZE _ + 590) dot : ANALYZE _ - $default reduce using rule 588 (dot) + $default reduce using rule 590 (dot) state 866 - 589) dot : ALTER _ + 591) dot : ALTER _ - $default reduce using rule 589 (dot) + $default reduce using rule 591 (dot) state 867 - 590) dot : ALL _ + 592) dot : ALL _ - $default reduce using rule 590 (dot) + $default reduce using rule 592 (dot) state 868 - 591) dot : ALGORITHM _ + 593) dot : ALGORITHM _ - $default reduce using rule 591 (dot) + $default reduce using rule 593 (dot) state 869 - 592) dot : AFTER _ + 594) dot : AFTER _ - $default reduce using rule 592 (dot) + $default reduce using rule 594 (dot) state 870 - 593) dot : ADD _ + 595) dot : ADD _ - $default reduce using rule 593 (dot) + $default reduce using rule 595 (dot) state 871 - 594) dot : ACTION _ + 596) dot : ACTION _ - $default reduce using rule 594 (dot) + $default reduce using rule 596 (dot) state 872 @@ -9475,7 +9483,6 @@ state 873 S_EQUAL shift, and go to state 730 S_LEFT_PAREN shift, and go to state 726 S_RIGHT_PAREN shift, and go to state 722 - CURRENT_TIMESTAMP shift, and go to state 837 S_SINGLEQUOTE_IN shift, and go to state 721 S_SINGLEQUOTE_OUT shift, and go to state 720 S_DOUBLEQUOTE_IN shift, and go to state 732 @@ -9484,6 +9491,7 @@ state 873 S_FLOAT shift, and go to state 729 S_ZERO shift, and go to state 716 S_ONE shift, and go to state 723 + CURRENT_TIMESTAMP shift, and go to state 837 S_MINUS shift, and go to state 725 S_NAT shift, and go to state 724 NULL shift, and go to state 773 @@ -9496,7 +9504,7 @@ state 873 LOCAL shift, and go to state 790 CASCADED shift, and go to state 853 - star go to state 948 + star go to state 949 dot go to state 686 state 874 @@ -9536,11 +9544,10 @@ state 878 state 879 - 385) value : CURRENT_TIMESTAMP _ S + 385) value : current_timestamp _ - S_SPACE shift, and go to state 3 + $default reduce using rule 385 (value) - S go to state 949 state 880 @@ -9580,24 +9587,25 @@ state 884 state 885 - 397) negative_integer : S_MINUS _ S_ONE S - 398) negative_integer : S_MINUS _ S_NAT S + 397) current_timestamp : CURRENT_TIMESTAMP _ S + 398) current_timestamp : CURRENT_TIMESTAMP _ S r_opt_datatype_int - S_ONE shift, and go to state 951 - S_NAT shift, and go to state 952 + S_SPACE shift, and go to state 3 + S go to state 951 state 886 - 196) r_UNIQUE_or_PRIMARY : UNIQUE S KEY _ S + 399) negative_integer : S_MINUS _ S_ONE S + 400) negative_integer : S_MINUS _ S_NAT S - S_SPACE shift, and go to state 3 + S_ONE shift, and go to state 952 + S_NAT shift, and go to state 953 - S go to state 953 state 887 - 198) r_UNIQUE_or_PRIMARY : PRIMARY S KEY _ S + 196) r_UNIQUE_or_PRIMARY : UNIQUE S KEY _ S S_SPACE shift, and go to state 3 @@ -9605,22 +9613,22 @@ state 887 state 888 - 199) r_COMMENT_with_val : COMMENT S string _ + 198) r_UNIQUE_or_PRIMARY : PRIMARY S KEY _ S - $default reduce using rule 199 (r_COMMENT_with_val) + S_SPACE shift, and go to state 3 + S go to state 955 state 889 - 200) r_COLUMN_FORMAT : COLUMN_FORMAT S FIXED _ S + 199) r_COMMENT_with_val : COMMENT S string _ - S_SPACE shift, and go to state 3 + $default reduce using rule 199 (r_COMMENT_with_val) - S go to state 955 state 890 - 201) r_COLUMN_FORMAT : COLUMN_FORMAT S DYNAMIC _ S + 200) r_COLUMN_FORMAT : COLUMN_FORMAT S FIXED _ S S_SPACE shift, and go to state 3 @@ -9628,7 +9636,7 @@ state 890 state 891 - 202) r_COLUMN_FORMAT : COLUMN_FORMAT S DEFAULT _ S + 201) r_COLUMN_FORMAT : COLUMN_FORMAT S DYNAMIC _ S S_SPACE shift, and go to state 3 @@ -9636,7 +9644,7 @@ state 891 state 892 - 203) r_STORAGE : STORAGE S DISK _ S + 202) r_COLUMN_FORMAT : COLUMN_FORMAT S DEFAULT _ S S_SPACE shift, and go to state 3 @@ -9644,7 +9652,7 @@ state 892 state 893 - 204) r_STORAGE : STORAGE S MEMORY _ S + 203) r_STORAGE : STORAGE S DISK _ S S_SPACE shift, and go to state 3 @@ -9652,7 +9660,7 @@ state 893 state 894 - 205) r_STORAGE : STORAGE S DEFAULT _ S + 204) r_STORAGE : STORAGE S MEMORY _ S S_SPACE shift, and go to state 3 @@ -9660,7 +9668,7 @@ state 894 state 895 - 218) r_COLUMN_ON_UPDATE : ON S UPDATE _ S literal + 205) r_STORAGE : STORAGE S DEFAULT _ S S_SPACE shift, and go to state 3 @@ -9668,47 +9676,55 @@ state 895 state 896 + 218) r_COLUMN_ON_UPDATE : ON S UPDATE _ S literal + + S_SPACE shift, and go to state 3 + + S go to state 962 + +state 897 + 183) r_length_int : left_paren nat _ right_paren S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 962 + right_paren go to state 963 -state 897 +state 898 176) r_opt_datatype_int : r_opt_length_int r_opt_UNSIGNED _ r_opt_ZEROFILL - ZEROFILL shift, and go to state 964 + ZEROFILL shift, and go to state 965 $default reduce using rule 187 (r_opt_ZEROFILL) - r_opt_ZEROFILL go to state 963 + r_opt_ZEROFILL go to state 964 -state 898 +state 899 186) r_opt_UNSIGNED : UNSIGNED _ S S_SPACE shift, and go to state 3 - S go to state 965 + S go to state 966 -state 899 +state 900 177) r_opt_datatype_real : r_opt_length_real r_opt_UNSIGNED _ r_opt_ZEROFILL - ZEROFILL shift, and go to state 964 + ZEROFILL shift, and go to state 965 $default reduce using rule 187 (r_opt_ZEROFILL) - r_opt_ZEROFILL go to state 966 + r_opt_ZEROFILL go to state 967 -state 900 +state 901 184) r_length_real : left_paren nat _ comma nat right_paren S_COMMA shift, and go to state 115 - comma go to state 967 + comma go to state 968 -state 901 +state 902 183) r_length_int : left_paren nat _ right_paren 184) r_length_real : left_paren nat _ comma nat right_paren @@ -9716,55 +9732,55 @@ state 901 S_COMMA shift, and go to state 115 S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 962 - comma go to state 967 + right_paren go to state 963 + comma go to state 968 -state 902 +state 903 356) r_datatype : CHAR S r_opt_length_int r_opt_datatype_char _ $default reduce using rule 356 (r_datatype) -state 903 +state 904 357) r_datatype : VARCHAR S r_opt_length_int r_opt_datatype_char _ $default reduce using rule 357 (r_datatype) -state 904 +state 905 178) r_opt_datatype_char : r_opt_BINARY r_opt_CHARACTER_SET_with_val _ opt_COLLATE_with_val - COLLATE shift, and go to state 969 + COLLATE shift, and go to state 970 $default reduce using rule 231 (opt_COLLATE_with_val) - opt_COLLATE_with_val go to state 968 + opt_COLLATE_with_val go to state 969 -state 905 +state 906 230) r_opt_CHARACTER_SET_with_val : L_CHARACTER_SET _ S r_charset_name S_SPACE shift, and go to state 3 - S go to state 970 + S go to state 971 -state 906 +state 907 190) r_opt_BINARY : BINARY S _ $default reduce using rule 190 (r_opt_BINARY) -state 907 +state 908 310) r_comma_separated_string : string _ $default reduce using rule 310 (r_comma_separated_string) -state 908 +state 909 311) r_comma_separated_string : r_comma_separated_string _ comma string 368) r_datatype : SET S left_paren r_comma_separated_string _ right_paren r_opt_CHARACTER_SET_with_val opt_COLLATE_with_val @@ -9772,10 +9788,10 @@ state 908 S_COMMA shift, and go to state 115 S_RIGHT_PAREN shift, and go to state 307 - comma go to state 971 - right_paren go to state 972 + comma go to state 972 + right_paren go to state 973 -state 909 +state 910 311) r_comma_separated_string : r_comma_separated_string _ comma string 369) r_datatype : ENUM S left_paren r_comma_separated_string _ right_paren r_opt_CHARACTER_SET_with_val opt_COLLATE_with_val @@ -9783,32 +9799,32 @@ state 909 S_COMMA shift, and go to state 115 S_RIGHT_PAREN shift, and go to state 307 - comma go to state 971 - right_paren go to state 973 + comma go to state 972 + right_paren go to state 974 -state 910 +state 911 70) r_shared_create_alter : r_opt_CONSTRAINT_with_val PRIMARY S KEY S _ r_alter_index_opt USING shift, and go to state 172 $default reduce using rule 143 (r_opt_index_type) - r_alter_index_opt go to state 974 + r_alter_index_opt go to state 975 r_opt_index_type go to state 488 r_index_type go to state 171 -state 911 +state 912 72) r_shared_create_alter : r_opt_CONSTRAINT_with_val UNIQUE S r_opt_INDEX_or_KEY r_opt_index_name _ r_alter_index_opt USING shift, and go to state 172 $default reduce using rule 143 (r_opt_index_type) - r_alter_index_opt go to state 975 + r_alter_index_opt go to state 976 r_opt_index_type go to state 488 r_index_type go to state 171 -state 912 +state 913 75) r_shared_create_alter : r_opt_CONSTRAINT_with_val FOREIGN S KEY S _ r_opt_index_name r_alter_index_opt r_REFERENCES_definition @@ -9816,12 +9832,12 @@ state 912 S_BACKTICK_IN shift, and go to state 56 $default reduce using rule 141 (r_opt_index_name) - r_opt_index_name go to state 976 + r_opt_index_name go to state 977 r_index_name go to state 347 ident go to state 95 raw_ident go to state 55 -state 913 +state 914 136) r_alter_index_opt : r_opt_index_type left_paren r_comma_separated_index_col_name _ right_paren r_opt_space_separated_index_option 287) r_comma_separated_index_col_name : r_comma_separated_index_col_name _ comma r_index_col_name @@ -9829,17 +9845,17 @@ state 913 S_COMMA shift, and go to state 115 S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 977 - comma go to state 978 + right_paren go to state 978 + comma go to state 979 -state 914 +state 915 286) r_comma_separated_index_col_name : r_index_col_name _ $default reduce using rule 286 (r_comma_separated_index_col_name) -state 915 +state 916 314) r_index_col_name : r_col_name _ r_opt_length_int r_opt_ASC_or_DESC @@ -9848,61 +9864,61 @@ state 915 r_length_int go to state 587 left_paren go to state 588 - r_opt_length_int go to state 979 + r_opt_length_int go to state 980 -state 916 +state 917 73) r_shared_create_alter : FULLTEXT S r_opt_INDEX_or_KEY r_opt_index_name r_alter_index_opt _ $default reduce using rule 73 (r_shared_create_alter) -state 917 +state 918 74) r_shared_create_alter : SPATIAL S r_opt_INDEX_or_KEY r_opt_index_name r_alter_index_opt _ $default reduce using rule 74 (r_shared_create_alter) -state 918 +state 919 94) r_DATA_DIRECTORY_equal_with_val : DATA S DIRECTORY S opt_equal string _ $default reduce using rule 94 (r_DATA_DIRECTORY_equal_with_val) -state 919 +state 920 95) r_INDEX_DIRECTORY_equal_with_val : INDEX S DIRECTORY S opt_equal string _ $default reduce using rule 95 (r_INDEX_DIRECTORY_equal_with_val) -state 920 +state 921 242) r_opt_STORAGE_option : STORAGE S DISK _ S S_SPACE shift, and go to state 3 - S go to state 980 + S go to state 981 -state 921 +state 922 243) r_opt_STORAGE_option : STORAGE S MEMORY _ S S_SPACE shift, and go to state 3 - S go to state 981 + S go to state 982 -state 922 +state 923 244) r_opt_STORAGE_option : STORAGE S DEFAULT _ S S_SPACE shift, and go to state 3 - S go to state 982 + S go to state 983 -state 923 +state 924 107) r_shared_table_option : UNION S opt_equal left_paren opt_equal r_comma_separated_tbl_name _ right_paren 285) r_comma_separated_tbl_name : r_comma_separated_tbl_name _ comma r_tbl_name @@ -9910,38 +9926,38 @@ state 923 S_COMMA shift, and go to state 115 S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 983 + right_paren go to state 984 comma go to state 180 -state 924 +state 925 334) r_charset_name : LATIN1 S _ $default reduce using rule 334 (r_charset_name) -state 925 +state 926 335) r_charset_name : UTF8 S _ $default reduce using rule 335 (r_charset_name) -state 926 +state 927 336) r_charset_name : UTF8MB4 S _ $default reduce using rule 336 (r_charset_name) -state 927 +state 928 337) r_charset_name : UTF8MB3 S _ $default reduce using rule 337 (r_charset_name) -state 928 +state 929 165) r_CREATE_INDEX : CREATE S r_opt_ONLINE_OFFLINE r_opt_UNIQUE_or_FULLTEXT_or_SPATIAL INDEX S r_index_name r_opt_index_type ON S r_tbl_name left_paren r_comma_separated_index_col_name _ right_paren r_opt_index_option 287) r_comma_separated_index_col_name : r_comma_separated_index_col_name _ comma r_index_col_name @@ -9949,10 +9965,10 @@ state 928 S_COMMA shift, and go to state 115 S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 984 - comma go to state 978 + right_paren go to state 985 + comma go to state 979 -state 929 +state 930 93) r_opt_after_alter : ORDER S BY S r_comma_separated_col_name _ 283) r_comma_separated_col_name : r_comma_separated_col_name _ comma r_col_name @@ -9962,37 +9978,37 @@ state 929 comma go to state 570 -state 930 +state 931 77) r_alter_specification : ADD S r_opt_COLUMN r_col_name r_column_definition r_opt_pos_column _ $default reduce using rule 77 (r_alter_specification) -state 931 +state 932 234) r_opt_pos_column : FIRST _ S S_SPACE shift, and go to state 3 - S go to state 985 + S go to state 986 -state 932 +state 933 235) r_opt_pos_column : AFTER _ S r_col_name S_SPACE shift, and go to state 3 - S go to state 986 + S go to state 987 -state 933 +state 934 78) r_alter_specification : ADD S r_opt_COLUMN left_paren r_comma_separated_add_col right_paren _ $default reduce using rule 78 (r_alter_specification) -state 934 +state 935 289) r_comma_separated_add_col : r_comma_separated_add_col comma _ r_col_name_with_definition @@ -10000,80 +10016,80 @@ state 934 S_BACKTICK_IN shift, and go to state 56 r_col_name go to state 225 - r_col_name_with_definition go to state 987 + r_col_name_with_definition go to state 988 ident go to state 234 raw_ident go to state 55 -state 935 +state 936 122) r_single_alter_specification : ADD S PARTITION S left_paren r_partition_definition _ right_paren S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 988 + right_paren go to state 989 -state 936 +state 937 252) r_partition_definition : PARTITION _ S r_partition_name r_opt_partition_values r_partition_subpartition_share r_opt_subpartition_definition_list S_SPACE shift, and go to state 3 - S go to state 989 + S go to state 990 -state 937 +state 938 150) r_SET_or_DROP_DEFAULT : SET S _ DEFAULT S literal - DEFAULT shift, and go to state 990 + DEFAULT shift, and go to state 991 -state 938 +state 939 151) r_SET_or_DROP_DEFAULT : DROP S _ DEFAULT S - DEFAULT shift, and go to state 991 + DEFAULT shift, and go to state 992 -state 939 +state 940 81) r_alter_specification : CHANGE S r_opt_COLUMN r_col_name r_col_name r_column_definition _ r_opt_pos_column - FIRST shift, and go to state 931 - AFTER shift, and go to state 932 + FIRST shift, and go to state 932 + AFTER shift, and go to state 933 $default reduce using rule 233 (r_opt_pos_column) - r_opt_pos_column go to state 992 + r_opt_pos_column go to state 993 -state 940 +state 941 83) r_alter_specification : DROP S FOREIGN S KEY S _ r_fk_symbol S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_fk_symbol go to state 993 - ident go to state 994 + r_fk_symbol go to state 994 + ident go to state 995 raw_ident go to state 55 -state 941 +state 942 91) r_alter_specification : DROP S PRIMARY S KEY S _ $default reduce using rule 91 (r_alter_specification) -state 942 +state 943 293) r_comma_separated_partition_name : r_comma_separated_partition_name comma _ r_partition_name S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_partition_name go to state 995 + r_partition_name go to state 996 ident go to state 670 raw_ident go to state 55 -state 943 +state 944 87) r_alter_specification : CONVERT S TO S L_CHARACTER_SET S _ r_charset_name opt_COLLATE_with_val @@ -10083,42 +10099,42 @@ state 943 UTF8MB4 shift, and go to state 652 UTF8MB3 shift, and go to state 653 - r_charset_name go to state 996 + r_charset_name go to state 997 raw_ident go to state 654 -state 944 +state 945 90) r_alter_specification : MODIFY S r_opt_COLUMN r_col_name r_column_definition r_opt_pos_column _ $default reduce using rule 90 (r_alter_specification) -state 945 +state 946 277) r_partition_name_list_or_ALL : ALL S _ $default reduce using rule 277 (r_partition_name_list_or_ALL) -state 946 +state 947 276) r_opt_partition_names_INTO_definitions : r_comma_separated_partition_name INTO _ S left_paren r_comma_separated_partition_definition right_paren S_SPACE shift, and go to state 3 - S go to state 997 + S go to state 998 -state 947 +state 948 - 409) star : star dot _ + 411) star : star dot _ - $default reduce using rule 409 (star) + $default reduce using rule 411 (star) -state 948 +state 949 69) r_select_statement : r_opt_IGNORE_or_REPLACE r_opt_AS SELECT S star _ - 409) star : star _ dot + 411) star : star _ dot CREATE shift, and go to state 838 VIEW shift, and go to state 690 @@ -10285,7 +10301,6 @@ state 948 S_EQUAL shift, and go to state 730 S_LEFT_PAREN shift, and go to state 726 S_RIGHT_PAREN shift, and go to state 722 - CURRENT_TIMESTAMP shift, and go to state 837 S_SINGLEQUOTE_IN shift, and go to state 721 S_SINGLEQUOTE_OUT shift, and go to state 720 S_DOUBLEQUOTE_IN shift, and go to state 732 @@ -10294,6 +10309,7 @@ state 948 S_FLOAT shift, and go to state 729 S_ZERO shift, and go to state 716 S_ONE shift, and go to state 723 + CURRENT_TIMESTAMP shift, and go to state 837 S_MINUS shift, and go to state 725 S_NAT shift, and go to state 724 NULL shift, and go to state 773 @@ -10307,14 +10323,7 @@ state 948 CASCADED shift, and go to state 853 $default reduce using rule 69 (r_select_statement) - dot go to state 947 - -state 949 - - 385) value : CURRENT_TIMESTAMP S _ - - $default reduce using rule 385 (value) - + dot go to state 948 state 950 @@ -10325,138 +10334,170 @@ state 950 state 951 - 397) negative_integer : S_MINUS S_ONE _ S + 397) current_timestamp : CURRENT_TIMESTAMP S _ + 398) current_timestamp : CURRENT_TIMESTAMP S _ r_opt_datatype_int - S_SPACE shift, and go to state 3 + S_LEFT_PAREN shift, and go to state 169 + $end [reduce using rule 397 (current_timestamp)] + NOT [reduce using rule 397 (current_timestamp)] + DEFAULT [reduce using rule 397 (current_timestamp)] + REMOVE [reduce using rule 397 (current_timestamp)] + PARTITION [reduce using rule 397 (current_timestamp)] + PRIMARY [reduce using rule 397 (current_timestamp)] + UNIQUE [reduce using rule 397 (current_timestamp)] + ORDER [reduce using rule 397 (current_timestamp)] + AUTO_INCREMENT [reduce using rule 397 (current_timestamp)] + ON [reduce using rule 397 (current_timestamp)] + COMMENT [reduce using rule 397 (current_timestamp)] + COLUMN_FORMAT [reduce using rule 397 (current_timestamp)] + STORAGE [reduce using rule 397 (current_timestamp)] + FIRST [reduce using rule 397 (current_timestamp)] + AFTER [reduce using rule 397 (current_timestamp)] + S_COMMA [reduce using rule 397 (current_timestamp)] + S_RIGHT_PAREN [reduce using rule 397 (current_timestamp)] + NULL [reduce using rule 397 (current_timestamp)] + $default reduce using rule 179 (r_opt_length_int) - S go to state 998 + r_opt_length_int go to state 590 + r_length_int go to state 587 + left_paren go to state 588 + r_opt_datatype_int go to state 999 state 952 - 398) negative_integer : S_MINUS S_NAT _ S + 399) negative_integer : S_MINUS S_ONE _ S S_SPACE shift, and go to state 3 - S go to state 999 + S go to state 1000 state 953 + 400) negative_integer : S_MINUS S_NAT _ S + + S_SPACE shift, and go to state 3 + + S go to state 1001 + +state 954 + 196) r_UNIQUE_or_PRIMARY : UNIQUE S KEY S _ $default reduce using rule 196 (r_UNIQUE_or_PRIMARY) -state 954 +state 955 198) r_UNIQUE_or_PRIMARY : PRIMARY S KEY S _ $default reduce using rule 198 (r_UNIQUE_or_PRIMARY) -state 955 +state 956 200) r_COLUMN_FORMAT : COLUMN_FORMAT S FIXED S _ $default reduce using rule 200 (r_COLUMN_FORMAT) -state 956 +state 957 201) r_COLUMN_FORMAT : COLUMN_FORMAT S DYNAMIC S _ $default reduce using rule 201 (r_COLUMN_FORMAT) -state 957 +state 958 202) r_COLUMN_FORMAT : COLUMN_FORMAT S DEFAULT S _ $default reduce using rule 202 (r_COLUMN_FORMAT) -state 958 +state 959 203) r_STORAGE : STORAGE S DISK S _ $default reduce using rule 203 (r_STORAGE) -state 959 +state 960 204) r_STORAGE : STORAGE S MEMORY S _ $default reduce using rule 204 (r_STORAGE) -state 960 +state 961 205) r_STORAGE : STORAGE S DEFAULT S _ $default reduce using rule 205 (r_STORAGE) -state 961 +state 962 218) r_COLUMN_ON_UPDATE : ON S UPDATE S _ literal - CURRENT_TIMESTAMP shift, and go to state 879 S_SINGLEQUOTE_IN shift, and go to state 129 S_DOUBLEQUOTE_IN shift, and go to state 130 S_FLOAT shift, and go to state 882 S_ZERO shift, and go to state 497 S_ONE shift, and go to state 498 - S_MINUS shift, and go to state 885 + CURRENT_TIMESTAMP shift, and go to state 885 + S_MINUS shift, and go to state 886 S_NAT shift, and go to state 499 NULL shift, and go to state 452 - literal go to state 1000 - value go to state 1001 + literal go to state 1002 + value go to state 1003 null go to state 876 number go to state 877 string go to state 878 + current_timestamp go to state 879 integer go to state 880 float go to state 881 nat go to state 883 negative_integer go to state 884 binary go to state 500 -state 962 +state 963 183) r_length_int : left_paren nat right_paren _ $default reduce using rule 183 (r_length_int) -state 963 +state 964 176) r_opt_datatype_int : r_opt_length_int r_opt_UNSIGNED r_opt_ZEROFILL _ $default reduce using rule 176 (r_opt_datatype_int) -state 964 +state 965 188) r_opt_ZEROFILL : ZEROFILL _ S S_SPACE shift, and go to state 3 - S go to state 1002 + S go to state 1004 -state 965 +state 966 186) r_opt_UNSIGNED : UNSIGNED S _ $default reduce using rule 186 (r_opt_UNSIGNED) -state 966 +state 967 177) r_opt_datatype_real : r_opt_length_real r_opt_UNSIGNED r_opt_ZEROFILL _ $default reduce using rule 177 (r_opt_datatype_real) -state 967 +state 968 184) r_length_real : left_paren nat comma _ nat right_paren @@ -10464,25 +10505,25 @@ state 967 S_ONE shift, and go to state 498 S_NAT shift, and go to state 499 - nat go to state 1003 + nat go to state 1005 binary go to state 500 -state 968 +state 969 178) r_opt_datatype_char : r_opt_BINARY r_opt_CHARACTER_SET_with_val opt_COLLATE_with_val _ $default reduce using rule 178 (r_opt_datatype_char) -state 969 +state 970 232) opt_COLLATE_with_val : COLLATE _ S r_collation_name S_SPACE shift, and go to state 3 - S go to state 1004 + S go to state 1006 -state 970 +state 971 230) r_opt_CHARACTER_SET_with_val : L_CHARACTER_SET S _ r_charset_name @@ -10492,566 +10533,574 @@ state 970 UTF8MB4 shift, and go to state 652 UTF8MB3 shift, and go to state 653 - r_charset_name go to state 1005 + r_charset_name go to state 1007 raw_ident go to state 654 -state 971 +state 972 311) r_comma_separated_string : r_comma_separated_string comma _ string S_SINGLEQUOTE_IN shift, and go to state 129 S_DOUBLEQUOTE_IN shift, and go to state 130 - string go to state 1006 + string go to state 1008 -state 972 +state 973 368) r_datatype : SET S left_paren r_comma_separated_string right_paren _ r_opt_CHARACTER_SET_with_val opt_COLLATE_with_val - L_CHARACTER_SET shift, and go to state 905 + L_CHARACTER_SET shift, and go to state 906 $default reduce using rule 229 (r_opt_CHARACTER_SET_with_val) - r_opt_CHARACTER_SET_with_val go to state 1007 + r_opt_CHARACTER_SET_with_val go to state 1009 -state 973 +state 974 369) r_datatype : ENUM S left_paren r_comma_separated_string right_paren _ r_opt_CHARACTER_SET_with_val opt_COLLATE_with_val - L_CHARACTER_SET shift, and go to state 905 + L_CHARACTER_SET shift, and go to state 906 $default reduce using rule 229 (r_opt_CHARACTER_SET_with_val) - r_opt_CHARACTER_SET_with_val go to state 1008 + r_opt_CHARACTER_SET_with_val go to state 1010 -state 974 +state 975 70) r_shared_create_alter : r_opt_CONSTRAINT_with_val PRIMARY S KEY S r_alter_index_opt _ $default reduce using rule 70 (r_shared_create_alter) -state 975 +state 976 72) r_shared_create_alter : r_opt_CONSTRAINT_with_val UNIQUE S r_opt_INDEX_or_KEY r_opt_index_name r_alter_index_opt _ $default reduce using rule 72 (r_shared_create_alter) -state 976 +state 977 75) r_shared_create_alter : r_opt_CONSTRAINT_with_val FOREIGN S KEY S r_opt_index_name _ r_alter_index_opt r_REFERENCES_definition USING shift, and go to state 172 $default reduce using rule 143 (r_opt_index_type) - r_alter_index_opt go to state 1009 + r_alter_index_opt go to state 1011 r_opt_index_type go to state 488 r_index_type go to state 171 -state 977 +state 978 136) r_alter_index_opt : r_opt_index_type left_paren r_comma_separated_index_col_name right_paren _ r_opt_space_separated_index_option $default reduce using rule 302 (r_opt_space_separated_index_option) - r_opt_space_separated_index_option go to state 1010 + r_opt_space_separated_index_option go to state 1012 -state 978 +state 979 287) r_comma_separated_index_col_name : r_comma_separated_index_col_name comma _ r_index_col_name S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_index_col_name go to state 1011 - r_col_name go to state 915 + r_index_col_name go to state 1013 + r_col_name go to state 916 ident go to state 234 raw_ident go to state 55 -state 979 +state 980 314) r_index_col_name : r_col_name r_opt_length_int _ r_opt_ASC_or_DESC - ASC shift, and go to state 1012 - DESC shift, and go to state 1013 + ASC shift, and go to state 1014 + DESC shift, and go to state 1015 $default reduce using rule 211 (r_opt_ASC_or_DESC) - r_opt_ASC_or_DESC go to state 1014 + r_opt_ASC_or_DESC go to state 1016 -state 980 +state 981 242) r_opt_STORAGE_option : STORAGE S DISK S _ $default reduce using rule 242 (r_opt_STORAGE_option) -state 981 +state 982 243) r_opt_STORAGE_option : STORAGE S MEMORY S _ $default reduce using rule 243 (r_opt_STORAGE_option) -state 982 +state 983 244) r_opt_STORAGE_option : STORAGE S DEFAULT S _ $default reduce using rule 244 (r_opt_STORAGE_option) -state 983 +state 984 107) r_shared_table_option : UNION S opt_equal left_paren opt_equal r_comma_separated_tbl_name right_paren _ $default reduce using rule 107 (r_shared_table_option) -state 984 +state 985 165) r_CREATE_INDEX : CREATE S r_opt_ONLINE_OFFLINE r_opt_UNIQUE_or_FULLTEXT_or_SPATIAL INDEX S r_index_name r_opt_index_type ON S r_tbl_name left_paren r_comma_separated_index_col_name right_paren _ r_opt_index_option - KEY_BLOCK_SIZE shift, and go to state 1016 + KEY_BLOCK_SIZE shift, and go to state 1018 USING shift, and go to state 172 - WITH shift, and go to state 1017 + WITH shift, and go to state 1019 $default reduce using rule 170 (r_opt_index_option) - r_index_type go to state 1015 - r_opt_index_option go to state 1018 - r_index_option go to state 1019 + r_index_type go to state 1017 + r_opt_index_option go to state 1020 + r_index_option go to state 1021 -state 985 +state 986 234) r_opt_pos_column : FIRST S _ $default reduce using rule 234 (r_opt_pos_column) -state 986 +state 987 235) r_opt_pos_column : AFTER S _ r_col_name S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_col_name go to state 1020 + r_col_name go to state 1022 ident go to state 234 raw_ident go to state 55 -state 987 +state 988 289) r_comma_separated_add_col : r_comma_separated_add_col comma r_col_name_with_definition _ $default reduce using rule 289 (r_comma_separated_add_col) -state 988 +state 989 122) r_single_alter_specification : ADD S PARTITION S left_paren r_partition_definition right_paren _ $default reduce using rule 122 (r_single_alter_specification) -state 989 +state 990 252) r_partition_definition : PARTITION S _ r_partition_name r_opt_partition_values r_partition_subpartition_share r_opt_subpartition_definition_list S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_partition_name go to state 1021 + r_partition_name go to state 1023 ident go to state 670 raw_ident go to state 55 -state 990 +state 991 150) r_SET_or_DROP_DEFAULT : SET S DEFAULT _ S literal S_SPACE shift, and go to state 3 - S go to state 1022 + S go to state 1024 -state 991 +state 992 151) r_SET_or_DROP_DEFAULT : DROP S DEFAULT _ S S_SPACE shift, and go to state 3 - S go to state 1023 + S go to state 1025 -state 992 +state 993 81) r_alter_specification : CHANGE S r_opt_COLUMN r_col_name r_col_name r_column_definition r_opt_pos_column _ $default reduce using rule 81 (r_alter_specification) -state 993 +state 994 83) r_alter_specification : DROP S FOREIGN S KEY S r_fk_symbol _ $default reduce using rule 83 (r_alter_specification) -state 994 +state 995 331) r_fk_symbol : ident _ $default reduce using rule 331 (r_fk_symbol) -state 995 +state 996 293) r_comma_separated_partition_name : r_comma_separated_partition_name comma r_partition_name _ $default reduce using rule 293 (r_comma_separated_partition_name) -state 996 +state 997 87) r_alter_specification : CONVERT S TO S L_CHARACTER_SET S r_charset_name _ opt_COLLATE_with_val - COLLATE shift, and go to state 969 + COLLATE shift, and go to state 970 $default reduce using rule 231 (opt_COLLATE_with_val) - opt_COLLATE_with_val go to state 1024 + opt_COLLATE_with_val go to state 1026 -state 997 +state 998 276) r_opt_partition_names_INTO_definitions : r_comma_separated_partition_name INTO S _ left_paren r_comma_separated_partition_definition right_paren S_LEFT_PAREN shift, and go to state 169 - left_paren go to state 1025 + left_paren go to state 1027 -state 998 +state 999 - 397) negative_integer : S_MINUS S_ONE S _ + 398) current_timestamp : CURRENT_TIMESTAMP S r_opt_datatype_int _ - $default reduce using rule 397 (negative_integer) + $default reduce using rule 398 (current_timestamp) -state 999 +state 1000 - 398) negative_integer : S_MINUS S_NAT S _ + 399) negative_integer : S_MINUS S_ONE S _ - $default reduce using rule 398 (negative_integer) + $default reduce using rule 399 (negative_integer) -state 1000 +state 1001 + + 400) negative_integer : S_MINUS S_NAT S _ + + $default reduce using rule 400 (negative_integer) + + +state 1002 218) r_COLUMN_ON_UPDATE : ON S UPDATE S literal _ $default reduce using rule 218 (r_COLUMN_ON_UPDATE) -state 1001 +state 1003 381) literal : value _ $default reduce using rule 381 (literal) -state 1002 +state 1004 188) r_opt_ZEROFILL : ZEROFILL S _ $default reduce using rule 188 (r_opt_ZEROFILL) -state 1003 +state 1005 184) r_length_real : left_paren nat comma nat _ right_paren S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 1026 + right_paren go to state 1028 -state 1004 +state 1006 232) opt_COLLATE_with_val : COLLATE S _ r_collation_name S_IDENT_NORMAL shift, and go to state 76 - r_collation_name go to state 1027 + r_collation_name go to state 1029 raw_ident go to state 648 -state 1005 +state 1007 230) r_opt_CHARACTER_SET_with_val : L_CHARACTER_SET S r_charset_name _ $default reduce using rule 230 (r_opt_CHARACTER_SET_with_val) -state 1006 +state 1008 311) r_comma_separated_string : r_comma_separated_string comma string _ $default reduce using rule 311 (r_comma_separated_string) -state 1007 +state 1009 368) r_datatype : SET S left_paren r_comma_separated_string right_paren r_opt_CHARACTER_SET_with_val _ opt_COLLATE_with_val - COLLATE shift, and go to state 969 + COLLATE shift, and go to state 970 $default reduce using rule 231 (opt_COLLATE_with_val) - opt_COLLATE_with_val go to state 1028 + opt_COLLATE_with_val go to state 1030 -state 1008 +state 1010 369) r_datatype : ENUM S left_paren r_comma_separated_string right_paren r_opt_CHARACTER_SET_with_val _ opt_COLLATE_with_val - COLLATE shift, and go to state 969 + COLLATE shift, and go to state 970 $default reduce using rule 231 (opt_COLLATE_with_val) - opt_COLLATE_with_val go to state 1029 + opt_COLLATE_with_val go to state 1031 -state 1009 +state 1011 75) r_shared_create_alter : r_opt_CONSTRAINT_with_val FOREIGN S KEY S r_opt_index_name r_alter_index_opt _ r_REFERENCES_definition - REFERENCES shift, and go to state 1031 + REFERENCES shift, and go to state 1033 - r_REFERENCES_definition go to state 1030 + r_REFERENCES_definition go to state 1032 -state 1010 +state 1012 136) r_alter_index_opt : r_opt_index_type left_paren r_comma_separated_index_col_name right_paren r_opt_space_separated_index_option _ 303) r_opt_space_separated_index_option : r_opt_space_separated_index_option _ r_index_option - KEY_BLOCK_SIZE shift, and go to state 1016 + KEY_BLOCK_SIZE shift, and go to state 1018 USING shift, and go to state 172 - WITH shift, and go to state 1017 + WITH shift, and go to state 1019 $default reduce using rule 136 (r_alter_index_opt) - r_index_type go to state 1015 - r_index_option go to state 1032 + r_index_type go to state 1017 + r_index_option go to state 1034 -state 1011 +state 1013 287) r_comma_separated_index_col_name : r_comma_separated_index_col_name comma r_index_col_name _ $default reduce using rule 287 (r_comma_separated_index_col_name) -state 1012 +state 1014 212) r_opt_ASC_or_DESC : ASC _ S S_SPACE shift, and go to state 3 - S go to state 1033 + S go to state 1035 -state 1013 +state 1015 213) r_opt_ASC_or_DESC : DESC _ S S_SPACE shift, and go to state 3 - S go to state 1034 + S go to state 1036 -state 1014 +state 1016 314) r_index_col_name : r_col_name r_opt_length_int r_opt_ASC_or_DESC _ $default reduce using rule 314 (r_index_col_name) -state 1015 +state 1017 147) r_index_option : r_index_type _ $default reduce using rule 147 (r_index_option) -state 1016 +state 1018 148) r_index_option : KEY_BLOCK_SIZE _ S opt_equal nat S_SPACE shift, and go to state 3 - S go to state 1035 + S go to state 1037 -state 1017 +state 1019 149) r_index_option : WITH _ S PARSER S r_parser_name S_SPACE shift, and go to state 3 - S go to state 1036 + S go to state 1038 -state 1018 +state 1020 165) r_CREATE_INDEX : CREATE S r_opt_ONLINE_OFFLINE r_opt_UNIQUE_or_FULLTEXT_or_SPATIAL INDEX S r_index_name r_opt_index_type ON S r_tbl_name left_paren r_comma_separated_index_col_name right_paren r_opt_index_option _ $default reduce using rule 165 (r_CREATE_INDEX) -state 1019 +state 1021 171) r_opt_index_option : r_index_option _ $default reduce using rule 171 (r_opt_index_option) -state 1020 +state 1022 235) r_opt_pos_column : AFTER S r_col_name _ $default reduce using rule 235 (r_opt_pos_column) -state 1021 +state 1023 252) r_partition_definition : PARTITION S r_partition_name _ r_opt_partition_values r_partition_subpartition_share r_opt_subpartition_definition_list - VALUES shift, and go to state 1038 + VALUES shift, and go to state 1040 $default reduce using rule 253 (r_opt_partition_values) - r_opt_partition_values go to state 1037 + r_opt_partition_values go to state 1039 -state 1022 +state 1024 150) r_SET_or_DROP_DEFAULT : SET S DEFAULT S _ literal - CURRENT_TIMESTAMP shift, and go to state 879 S_SINGLEQUOTE_IN shift, and go to state 129 S_DOUBLEQUOTE_IN shift, and go to state 130 S_FLOAT shift, and go to state 882 S_ZERO shift, and go to state 497 S_ONE shift, and go to state 498 - S_MINUS shift, and go to state 885 + CURRENT_TIMESTAMP shift, and go to state 885 + S_MINUS shift, and go to state 886 S_NAT shift, and go to state 499 NULL shift, and go to state 452 - literal go to state 1039 - value go to state 1001 + literal go to state 1041 + value go to state 1003 null go to state 876 number go to state 877 string go to state 878 + current_timestamp go to state 879 integer go to state 880 float go to state 881 nat go to state 883 negative_integer go to state 884 binary go to state 500 -state 1023 +state 1025 151) r_SET_or_DROP_DEFAULT : DROP S DEFAULT S _ $default reduce using rule 151 (r_SET_or_DROP_DEFAULT) -state 1024 +state 1026 87) r_alter_specification : CONVERT S TO S L_CHARACTER_SET S r_charset_name opt_COLLATE_with_val _ $default reduce using rule 87 (r_alter_specification) -state 1025 +state 1027 276) r_opt_partition_names_INTO_definitions : r_comma_separated_partition_name INTO S left_paren _ r_comma_separated_partition_definition right_paren - PARTITION shift, and go to state 936 + PARTITION shift, and go to state 937 - r_comma_separated_partition_definition go to state 1040 - r_partition_definition go to state 1041 + r_comma_separated_partition_definition go to state 1042 + r_partition_definition go to state 1043 -state 1026 +state 1028 184) r_length_real : left_paren nat comma nat right_paren _ $default reduce using rule 184 (r_length_real) -state 1027 +state 1029 232) opt_COLLATE_with_val : COLLATE S r_collation_name _ $default reduce using rule 232 (opt_COLLATE_with_val) -state 1028 +state 1030 368) r_datatype : SET S left_paren r_comma_separated_string right_paren r_opt_CHARACTER_SET_with_val opt_COLLATE_with_val _ $default reduce using rule 368 (r_datatype) -state 1029 +state 1031 369) r_datatype : ENUM S left_paren r_comma_separated_string right_paren r_opt_CHARACTER_SET_with_val opt_COLLATE_with_val _ $default reduce using rule 369 (r_datatype) -state 1030 +state 1032 75) r_shared_create_alter : r_opt_CONSTRAINT_with_val FOREIGN S KEY S r_opt_index_name r_alter_index_opt r_REFERENCES_definition _ $default reduce using rule 75 (r_shared_create_alter) -state 1031 +state 1033 206) r_REFERENCES_definition : REFERENCES _ S r_tbl_name left_paren r_comma_separated_index_col_name right_paren r_opt_MATCH r_opt_ON_DELETE_and_UPDATE S_SPACE shift, and go to state 3 - S go to state 1042 + S go to state 1044 -state 1032 +state 1034 303) r_opt_space_separated_index_option : r_opt_space_separated_index_option r_index_option _ $default reduce using rule 303 (r_opt_space_separated_index_option) -state 1033 +state 1035 212) r_opt_ASC_or_DESC : ASC S _ $default reduce using rule 212 (r_opt_ASC_or_DESC) -state 1034 +state 1036 213) r_opt_ASC_or_DESC : DESC S _ $default reduce using rule 213 (r_opt_ASC_or_DESC) -state 1035 +state 1037 148) r_index_option : KEY_BLOCK_SIZE S _ opt_equal nat S_EQUAL shift, and go to state 84 $default reduce using rule 375 (opt_equal) - opt_equal go to state 1043 + opt_equal go to state 1045 equal go to state 358 -state 1036 +state 1038 149) r_index_option : WITH S _ PARSER S r_parser_name - PARSER shift, and go to state 1044 + PARSER shift, and go to state 1046 -state 1037 +state 1039 252) r_partition_definition : PARTITION S r_partition_name r_opt_partition_values _ r_partition_subpartition_share r_opt_subpartition_definition_list - STORAGE shift, and go to state 1046 + STORAGE shift, and go to state 1048 ENGINE shift, and go to state 167 $default reduce using rule 258 (r_opt_STORAGE_ENGINE_equal_with_val) - r_partition_subpartition_share go to state 1045 - r_ENGINE_equal_with_val go to state 1047 - r_opt_STORAGE_ENGINE_equal_with_val go to state 1048 + r_partition_subpartition_share go to state 1047 + r_ENGINE_equal_with_val go to state 1049 + r_opt_STORAGE_ENGINE_equal_with_val go to state 1050 -state 1038 +state 1040 254) r_opt_partition_values : VALUES _ S LESS S THAN S MAXVALUE S 255) r_opt_partition_values : VALUES _ S LESS S THAN S left_paren expr right_paren @@ -11059,16 +11108,16 @@ state 1038 S_SPACE shift, and go to state 3 - S go to state 1049 + S go to state 1051 -state 1039 +state 1041 150) r_SET_or_DROP_DEFAULT : SET S DEFAULT S literal _ $default reduce using rule 150 (r_SET_or_DROP_DEFAULT) -state 1040 +state 1042 276) r_opt_partition_names_INTO_definitions : r_comma_separated_partition_name INTO S left_paren r_comma_separated_partition_definition _ right_paren 297) r_comma_separated_partition_definition : r_comma_separated_partition_definition _ comma r_partition_definition @@ -11076,17 +11125,17 @@ state 1040 S_COMMA shift, and go to state 115 S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 1050 - comma go to state 1051 + right_paren go to state 1052 + comma go to state 1053 -state 1041 +state 1043 296) r_comma_separated_partition_definition : r_partition_definition _ $default reduce using rule 296 (r_comma_separated_partition_definition) -state 1042 +state 1044 206) r_REFERENCES_definition : REFERENCES S _ r_tbl_name left_paren r_comma_separated_index_col_name right_paren r_opt_MATCH r_opt_ON_DELETE_and_UPDATE @@ -11094,12 +11143,12 @@ state 1042 S_DOT shift, and go to state 54 S_BACKTICK_IN shift, and go to state 56 - r_tbl_name go to state 1052 + r_tbl_name go to state 1054 r_tbl_name_int go to state 51 ident go to state 52 raw_ident go to state 55 -state 1043 +state 1045 148) r_index_option : KEY_BLOCK_SIZE S opt_equal _ nat @@ -11107,203 +11156,203 @@ state 1043 S_ONE shift, and go to state 498 S_NAT shift, and go to state 499 - nat go to state 1053 + nat go to state 1055 binary go to state 500 -state 1044 +state 1046 149) r_index_option : WITH S PARSER _ S r_parser_name S_SPACE shift, and go to state 3 - S go to state 1054 + S go to state 1056 -state 1045 +state 1047 252) r_partition_definition : PARTITION S r_partition_name r_opt_partition_values r_partition_subpartition_share _ r_opt_subpartition_definition_list S_LEFT_PAREN shift, and go to state 169 $default reduce using rule 273 (r_opt_subpartition_definition_list) - r_opt_subpartition_definition_list go to state 1055 - left_paren go to state 1056 + r_opt_subpartition_definition_list go to state 1057 + left_paren go to state 1058 -state 1046 +state 1048 259) r_opt_STORAGE_ENGINE_equal_with_val : STORAGE _ S ENGINE S opt_equal r_ENGINE_name S_SPACE shift, and go to state 3 - S go to state 1057 + S go to state 1059 -state 1047 +state 1049 260) r_opt_STORAGE_ENGINE_equal_with_val : r_ENGINE_equal_with_val _ $default reduce using rule 260 (r_opt_STORAGE_ENGINE_equal_with_val) -state 1048 +state 1050 272) r_partition_subpartition_share : r_opt_STORAGE_ENGINE_equal_with_val _ r_opt_COMMENT_equal_with_val r_opt_DATA_DIRECTORY_equal_with_val r_opt_INDEX_DIRECTORY_equal_with_val r_opt_MAX_ROWS_equal_with_val r_opt_MIN_ROWS_equal_with_val r_opt_TABLESPACE_equal_with_val r_opt_NODEGROUP_equal_with_val COMMENT shift, and go to state 164 $default reduce using rule 247 (r_opt_COMMENT_equal_with_val) - r_COMMENT_equal_with_val go to state 1058 - r_opt_COMMENT_equal_with_val go to state 1059 + r_COMMENT_equal_with_val go to state 1060 + r_opt_COMMENT_equal_with_val go to state 1061 -state 1049 +state 1051 254) r_opt_partition_values : VALUES S _ LESS S THAN S MAXVALUE S 255) r_opt_partition_values : VALUES S _ LESS S THAN S left_paren expr right_paren 256) r_opt_partition_values : VALUES S _ IN S left_paren r_comma_separated_integer right_paren - LESS shift, and go to state 1060 - IN shift, and go to state 1061 + LESS shift, and go to state 1062 + IN shift, and go to state 1063 -state 1050 +state 1052 276) r_opt_partition_names_INTO_definitions : r_comma_separated_partition_name INTO S left_paren r_comma_separated_partition_definition right_paren _ $default reduce using rule 276 (r_opt_partition_names_INTO_definitions) -state 1051 +state 1053 297) r_comma_separated_partition_definition : r_comma_separated_partition_definition comma _ r_partition_definition - PARTITION shift, and go to state 936 + PARTITION shift, and go to state 937 - r_partition_definition go to state 1062 + r_partition_definition go to state 1064 -state 1052 +state 1054 206) r_REFERENCES_definition : REFERENCES S r_tbl_name _ left_paren r_comma_separated_index_col_name right_paren r_opt_MATCH r_opt_ON_DELETE_and_UPDATE S_LEFT_PAREN shift, and go to state 169 - left_paren go to state 1063 + left_paren go to state 1065 -state 1053 +state 1055 148) r_index_option : KEY_BLOCK_SIZE S opt_equal nat _ $default reduce using rule 148 (r_index_option) -state 1054 +state 1056 149) r_index_option : WITH S PARSER S _ r_parser_name S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_parser_name go to state 1064 - ident go to state 1065 + r_parser_name go to state 1066 + ident go to state 1067 raw_ident go to state 55 -state 1055 +state 1057 252) r_partition_definition : PARTITION S r_partition_name r_opt_partition_values r_partition_subpartition_share r_opt_subpartition_definition_list _ $default reduce using rule 252 (r_partition_definition) -state 1056 +state 1058 274) r_opt_subpartition_definition_list : left_paren _ r_comma_separated_subpartition_definition right_paren - SUBPARTITION shift, and go to state 1066 + SUBPARTITION shift, and go to state 1068 - r_comma_separated_subpartition_definition go to state 1067 - r_subpartition_definition go to state 1068 + r_comma_separated_subpartition_definition go to state 1069 + r_subpartition_definition go to state 1070 -state 1057 +state 1059 259) r_opt_STORAGE_ENGINE_equal_with_val : STORAGE S _ ENGINE S opt_equal r_ENGINE_name - ENGINE shift, and go to state 1069 + ENGINE shift, and go to state 1071 -state 1058 +state 1060 248) r_opt_COMMENT_equal_with_val : r_COMMENT_equal_with_val _ $default reduce using rule 248 (r_opt_COMMENT_equal_with_val) -state 1059 +state 1061 272) r_partition_subpartition_share : r_opt_STORAGE_ENGINE_equal_with_val r_opt_COMMENT_equal_with_val _ r_opt_DATA_DIRECTORY_equal_with_val r_opt_INDEX_DIRECTORY_equal_with_val r_opt_MAX_ROWS_equal_with_val r_opt_MIN_ROWS_equal_with_val r_opt_TABLESPACE_equal_with_val r_opt_NODEGROUP_equal_with_val DATA shift, and go to state 140 $default reduce using rule 261 (r_opt_DATA_DIRECTORY_equal_with_val) - r_DATA_DIRECTORY_equal_with_val go to state 1070 - r_opt_DATA_DIRECTORY_equal_with_val go to state 1071 + r_DATA_DIRECTORY_equal_with_val go to state 1072 + r_opt_DATA_DIRECTORY_equal_with_val go to state 1073 -state 1060 +state 1062 254) r_opt_partition_values : VALUES S LESS _ S THAN S MAXVALUE S 255) r_opt_partition_values : VALUES S LESS _ S THAN S left_paren expr right_paren S_SPACE shift, and go to state 3 - S go to state 1072 + S go to state 1074 -state 1061 +state 1063 256) r_opt_partition_values : VALUES S IN _ S left_paren r_comma_separated_integer right_paren S_SPACE shift, and go to state 3 - S go to state 1073 + S go to state 1075 -state 1062 +state 1064 297) r_comma_separated_partition_definition : r_comma_separated_partition_definition comma r_partition_definition _ $default reduce using rule 297 (r_comma_separated_partition_definition) -state 1063 +state 1065 206) r_REFERENCES_definition : REFERENCES S r_tbl_name left_paren _ r_comma_separated_index_col_name right_paren r_opt_MATCH r_opt_ON_DELETE_and_UPDATE S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_comma_separated_index_col_name go to state 1074 - r_index_col_name go to state 914 - r_col_name go to state 915 + r_comma_separated_index_col_name go to state 1076 + r_index_col_name go to state 915 + r_col_name go to state 916 ident go to state 234 raw_ident go to state 55 -state 1064 +state 1066 149) r_index_option : WITH S PARSER S r_parser_name _ $default reduce using rule 149 (r_index_option) -state 1065 +state 1067 318) r_parser_name : ident _ $default reduce using rule 318 (r_parser_name) -state 1066 +state 1068 271) r_subpartition_definition : SUBPARTITION _ S r_logical_name r_partition_subpartition_share S_SPACE shift, and go to state 3 - S go to state 1075 + S go to state 1077 -state 1067 +state 1069 274) r_opt_subpartition_definition_list : left_paren r_comma_separated_subpartition_definition _ right_paren 295) r_comma_separated_subpartition_definition : r_comma_separated_subpartition_definition _ comma r_subpartition_definition @@ -11311,58 +11360,58 @@ state 1067 S_COMMA shift, and go to state 115 S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 1076 - comma go to state 1077 + right_paren go to state 1078 + comma go to state 1079 -state 1068 +state 1070 294) r_comma_separated_subpartition_definition : r_subpartition_definition _ $default reduce using rule 294 (r_comma_separated_subpartition_definition) -state 1069 +state 1071 259) r_opt_STORAGE_ENGINE_equal_with_val : STORAGE S ENGINE _ S opt_equal r_ENGINE_name S_SPACE shift, and go to state 3 - S go to state 1078 + S go to state 1080 -state 1070 +state 1072 262) r_opt_DATA_DIRECTORY_equal_with_val : r_DATA_DIRECTORY_equal_with_val _ $default reduce using rule 262 (r_opt_DATA_DIRECTORY_equal_with_val) -state 1071 +state 1073 272) r_partition_subpartition_share : r_opt_STORAGE_ENGINE_equal_with_val r_opt_COMMENT_equal_with_val r_opt_DATA_DIRECTORY_equal_with_val _ r_opt_INDEX_DIRECTORY_equal_with_val r_opt_MAX_ROWS_equal_with_val r_opt_MIN_ROWS_equal_with_val r_opt_TABLESPACE_equal_with_val r_opt_NODEGROUP_equal_with_val INDEX shift, and go to state 141 $default reduce using rule 263 (r_opt_INDEX_DIRECTORY_equal_with_val) - r_INDEX_DIRECTORY_equal_with_val go to state 1079 - r_opt_INDEX_DIRECTORY_equal_with_val go to state 1080 + r_INDEX_DIRECTORY_equal_with_val go to state 1081 + r_opt_INDEX_DIRECTORY_equal_with_val go to state 1082 -state 1072 +state 1074 254) r_opt_partition_values : VALUES S LESS S _ THAN S MAXVALUE S 255) r_opt_partition_values : VALUES S LESS S _ THAN S left_paren expr right_paren - THAN shift, and go to state 1081 + THAN shift, and go to state 1083 -state 1073 +state 1075 256) r_opt_partition_values : VALUES S IN S _ left_paren r_comma_separated_integer right_paren S_LEFT_PAREN shift, and go to state 169 - left_paren go to state 1082 + left_paren go to state 1084 -state 1074 +state 1076 206) r_REFERENCES_definition : REFERENCES S r_tbl_name left_paren r_comma_separated_index_col_name _ right_paren r_opt_MATCH r_opt_ON_DELETE_and_UPDATE 287) r_comma_separated_index_col_name : r_comma_separated_index_col_name _ comma r_index_col_name @@ -11370,159 +11419,159 @@ state 1074 S_COMMA shift, and go to state 115 S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 1083 - comma go to state 978 + right_paren go to state 1085 + comma go to state 979 -state 1075 +state 1077 271) r_subpartition_definition : SUBPARTITION S _ r_logical_name r_partition_subpartition_share S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_logical_name go to state 1084 - ident go to state 1085 + r_logical_name go to state 1086 + ident go to state 1087 raw_ident go to state 55 -state 1076 +state 1078 274) r_opt_subpartition_definition_list : left_paren r_comma_separated_subpartition_definition right_paren _ $default reduce using rule 274 (r_opt_subpartition_definition_list) -state 1077 +state 1079 295) r_comma_separated_subpartition_definition : r_comma_separated_subpartition_definition comma _ r_subpartition_definition - SUBPARTITION shift, and go to state 1066 + SUBPARTITION shift, and go to state 1068 - r_subpartition_definition go to state 1086 + r_subpartition_definition go to state 1088 -state 1078 +state 1080 259) r_opt_STORAGE_ENGINE_equal_with_val : STORAGE S ENGINE S _ opt_equal r_ENGINE_name S_EQUAL shift, and go to state 84 $default reduce using rule 375 (opt_equal) - opt_equal go to state 1087 + opt_equal go to state 1089 equal go to state 358 -state 1079 +state 1081 264) r_opt_INDEX_DIRECTORY_equal_with_val : r_INDEX_DIRECTORY_equal_with_val _ $default reduce using rule 264 (r_opt_INDEX_DIRECTORY_equal_with_val) -state 1080 +state 1082 272) r_partition_subpartition_share : r_opt_STORAGE_ENGINE_equal_with_val r_opt_COMMENT_equal_with_val r_opt_DATA_DIRECTORY_equal_with_val r_opt_INDEX_DIRECTORY_equal_with_val _ r_opt_MAX_ROWS_equal_with_val r_opt_MIN_ROWS_equal_with_val r_opt_TABLESPACE_equal_with_val r_opt_NODEGROUP_equal_with_val MAX_ROWS shift, and go to state 165 $default reduce using rule 265 (r_opt_MAX_ROWS_equal_with_val) - r_MAX_ROWS_equal_with_val go to state 1088 - r_opt_MAX_ROWS_equal_with_val go to state 1089 + r_MAX_ROWS_equal_with_val go to state 1090 + r_opt_MAX_ROWS_equal_with_val go to state 1091 -state 1081 +state 1083 254) r_opt_partition_values : VALUES S LESS S THAN _ S MAXVALUE S 255) r_opt_partition_values : VALUES S LESS S THAN _ S left_paren expr right_paren S_SPACE shift, and go to state 3 - S go to state 1090 + S go to state 1092 -state 1082 +state 1084 256) r_opt_partition_values : VALUES S IN S left_paren _ r_comma_separated_integer right_paren S_ZERO shift, and go to state 497 S_ONE shift, and go to state 498 - S_MINUS shift, and go to state 885 + S_MINUS shift, and go to state 886 S_NAT shift, and go to state 499 - r_comma_separated_integer go to state 1091 - integer go to state 1092 + r_comma_separated_integer go to state 1093 + integer go to state 1094 nat go to state 883 negative_integer go to state 884 binary go to state 500 -state 1083 +state 1085 206) r_REFERENCES_definition : REFERENCES S r_tbl_name left_paren r_comma_separated_index_col_name right_paren _ r_opt_MATCH r_opt_ON_DELETE_and_UPDATE - MATCH shift, and go to state 1094 + MATCH shift, and go to state 1096 $default reduce using rule 207 (r_opt_MATCH) - r_opt_MATCH go to state 1093 + r_opt_MATCH go to state 1095 -state 1084 +state 1086 271) r_subpartition_definition : SUBPARTITION S r_logical_name _ r_partition_subpartition_share - STORAGE shift, and go to state 1046 + STORAGE shift, and go to state 1048 ENGINE shift, and go to state 167 $default reduce using rule 258 (r_opt_STORAGE_ENGINE_equal_with_val) - r_ENGINE_equal_with_val go to state 1047 - r_partition_subpartition_share go to state 1095 - r_opt_STORAGE_ENGINE_equal_with_val go to state 1048 + r_ENGINE_equal_with_val go to state 1049 + r_partition_subpartition_share go to state 1097 + r_opt_STORAGE_ENGINE_equal_with_val go to state 1050 -state 1085 +state 1087 317) r_logical_name : ident _ $default reduce using rule 317 (r_logical_name) -state 1086 +state 1088 295) r_comma_separated_subpartition_definition : r_comma_separated_subpartition_definition comma r_subpartition_definition _ $default reduce using rule 295 (r_comma_separated_subpartition_definition) -state 1087 +state 1089 259) r_opt_STORAGE_ENGINE_equal_with_val : STORAGE S ENGINE S opt_equal _ r_ENGINE_name S_IDENT_NORMAL shift, and go to state 76 INNODB shift, and go to state 530 - r_ENGINE_name go to state 1096 + r_ENGINE_name go to state 1098 raw_ident go to state 531 -state 1088 +state 1090 266) r_opt_MAX_ROWS_equal_with_val : r_MAX_ROWS_equal_with_val _ $default reduce using rule 266 (r_opt_MAX_ROWS_equal_with_val) -state 1089 +state 1091 272) r_partition_subpartition_share : r_opt_STORAGE_ENGINE_equal_with_val r_opt_COMMENT_equal_with_val r_opt_DATA_DIRECTORY_equal_with_val r_opt_INDEX_DIRECTORY_equal_with_val r_opt_MAX_ROWS_equal_with_val _ r_opt_MIN_ROWS_equal_with_val r_opt_TABLESPACE_equal_with_val r_opt_NODEGROUP_equal_with_val MIN_ROWS shift, and go to state 166 $default reduce using rule 267 (r_opt_MIN_ROWS_equal_with_val) - r_MIN_ROWS_equal_with_val go to state 1097 - r_opt_MIN_ROWS_equal_with_val go to state 1098 + r_MIN_ROWS_equal_with_val go to state 1099 + r_opt_MIN_ROWS_equal_with_val go to state 1100 -state 1090 +state 1092 254) r_opt_partition_values : VALUES S LESS S THAN S _ MAXVALUE S 255) r_opt_partition_values : VALUES S LESS S THAN S _ left_paren expr right_paren - MAXVALUE shift, and go to state 1099 + MAXVALUE shift, and go to state 1101 S_LEFT_PAREN shift, and go to state 169 - left_paren go to state 1100 + left_paren go to state 1102 -state 1091 +state 1093 256) r_opt_partition_values : VALUES S IN S left_paren r_comma_separated_integer _ right_paren 305) r_comma_separated_integer : r_comma_separated_integer _ comma integer @@ -11530,26 +11579,26 @@ state 1091 S_COMMA shift, and go to state 115 S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 1101 - comma go to state 1102 + right_paren go to state 1103 + comma go to state 1104 -state 1092 +state 1094 304) r_comma_separated_integer : integer _ $default reduce using rule 304 (r_comma_separated_integer) -state 1093 +state 1095 206) r_REFERENCES_definition : REFERENCES S r_tbl_name left_paren r_comma_separated_index_col_name right_paren r_opt_MATCH _ r_opt_ON_DELETE_and_UPDATE - ON shift, and go to state 1104 + ON shift, and go to state 1106 $default reduce using rule 214 (r_opt_ON_DELETE_and_UPDATE) - r_opt_ON_DELETE_and_UPDATE go to state 1103 + r_opt_ON_DELETE_and_UPDATE go to state 1105 -state 1094 +state 1096 208) r_opt_MATCH : MATCH _ S FULL S 209) r_opt_MATCH : MATCH _ S PARTIAL S @@ -11557,93 +11606,93 @@ state 1094 S_SPACE shift, and go to state 3 - S go to state 1105 + S go to state 1107 -state 1095 +state 1097 271) r_subpartition_definition : SUBPARTITION S r_logical_name r_partition_subpartition_share _ $default reduce using rule 271 (r_subpartition_definition) -state 1096 +state 1098 259) r_opt_STORAGE_ENGINE_equal_with_val : STORAGE S ENGINE S opt_equal r_ENGINE_name _ $default reduce using rule 259 (r_opt_STORAGE_ENGINE_equal_with_val) -state 1097 +state 1099 268) r_opt_MIN_ROWS_equal_with_val : r_MIN_ROWS_equal_with_val _ $default reduce using rule 268 (r_opt_MIN_ROWS_equal_with_val) -state 1098 +state 1100 272) r_partition_subpartition_share : r_opt_STORAGE_ENGINE_equal_with_val r_opt_COMMENT_equal_with_val r_opt_DATA_DIRECTORY_equal_with_val r_opt_INDEX_DIRECTORY_equal_with_val r_opt_MAX_ROWS_equal_with_val r_opt_MIN_ROWS_equal_with_val _ r_opt_TABLESPACE_equal_with_val r_opt_NODEGROUP_equal_with_val - TABLESPACE shift, and go to state 1106 + TABLESPACE shift, and go to state 1108 $default reduce using rule 269 (r_opt_TABLESPACE_equal_with_val) - r_opt_TABLESPACE_equal_with_val go to state 1107 + r_opt_TABLESPACE_equal_with_val go to state 1109 -state 1099 +state 1101 254) r_opt_partition_values : VALUES S LESS S THAN S MAXVALUE _ S S_SPACE shift, and go to state 3 - S go to state 1108 + S go to state 1110 -state 1100 +state 1102 255) r_opt_partition_values : VALUES S LESS S THAN S left_paren _ expr right_paren S_FLOAT shift, and go to state 882 S_ZERO shift, and go to state 497 S_ONE shift, and go to state 498 - S_MINUS shift, and go to state 885 + S_MINUS shift, and go to state 886 S_NAT shift, and go to state 499 - expr go to state 1109 - number go to state 1110 + expr go to state 1111 + number go to state 1112 integer go to state 880 float go to state 881 nat go to state 883 negative_integer go to state 884 binary go to state 500 -state 1101 +state 1103 256) r_opt_partition_values : VALUES S IN S left_paren r_comma_separated_integer right_paren _ $default reduce using rule 256 (r_opt_partition_values) -state 1102 +state 1104 305) r_comma_separated_integer : r_comma_separated_integer comma _ integer S_ZERO shift, and go to state 497 S_ONE shift, and go to state 498 - S_MINUS shift, and go to state 885 + S_MINUS shift, and go to state 886 S_NAT shift, and go to state 499 - integer go to state 1111 + integer go to state 1113 nat go to state 883 negative_integer go to state 884 binary go to state 500 -state 1103 +state 1105 206) r_REFERENCES_definition : REFERENCES S r_tbl_name left_paren r_comma_separated_index_col_name right_paren r_opt_MATCH r_opt_ON_DELETE_and_UPDATE _ $default reduce using rule 206 (r_REFERENCES_definition) -state 1104 +state 1106 215) r_opt_ON_DELETE_and_UPDATE : ON _ S DELETE S r_reference_option 216) r_opt_ON_DELETE_and_UPDATE : ON _ S DELETE S r_reference_option ON S UPDATE S r_reference_option @@ -11651,331 +11700,331 @@ state 1104 S_SPACE shift, and go to state 3 - S go to state 1112 + S go to state 1114 -state 1105 +state 1107 208) r_opt_MATCH : MATCH S _ FULL S 209) r_opt_MATCH : MATCH S _ PARTIAL S 210) r_opt_MATCH : MATCH S _ SIMPLE S - FULL shift, and go to state 1113 - PARTIAL shift, and go to state 1114 - SIMPLE shift, and go to state 1115 + FULL shift, and go to state 1115 + PARTIAL shift, and go to state 1116 + SIMPLE shift, and go to state 1117 -state 1106 +state 1108 270) r_opt_TABLESPACE_equal_with_val : TABLESPACE _ S opt_equal r_tablespace_name S_SPACE shift, and go to state 3 - S go to state 1116 + S go to state 1118 -state 1107 +state 1109 272) r_partition_subpartition_share : r_opt_STORAGE_ENGINE_equal_with_val r_opt_COMMENT_equal_with_val r_opt_DATA_DIRECTORY_equal_with_val r_opt_INDEX_DIRECTORY_equal_with_val r_opt_MAX_ROWS_equal_with_val r_opt_MIN_ROWS_equal_with_val r_opt_TABLESPACE_equal_with_val _ r_opt_NODEGROUP_equal_with_val - NODEGROUP shift, and go to state 1117 + NODEGROUP shift, and go to state 1119 $default reduce using rule 118 (r_opt_NODEGROUP_equal_with_val) - r_opt_NODEGROUP_equal_with_val go to state 1118 + r_opt_NODEGROUP_equal_with_val go to state 1120 -state 1108 +state 1110 254) r_opt_partition_values : VALUES S LESS S THAN S MAXVALUE S _ $default reduce using rule 254 (r_opt_partition_values) -state 1109 +state 1111 255) r_opt_partition_values : VALUES S LESS S THAN S left_paren expr _ right_paren S_RIGHT_PAREN shift, and go to state 307 - right_paren go to state 1119 + right_paren go to state 1121 -state 1110 +state 1112 371) expr : number _ $default reduce using rule 371 (expr) -state 1111 +state 1113 305) r_comma_separated_integer : r_comma_separated_integer comma integer _ $default reduce using rule 305 (r_comma_separated_integer) -state 1112 +state 1114 215) r_opt_ON_DELETE_and_UPDATE : ON S _ DELETE S r_reference_option 216) r_opt_ON_DELETE_and_UPDATE : ON S _ DELETE S r_reference_option ON S UPDATE S r_reference_option 217) r_opt_ON_DELETE_and_UPDATE : ON S _ UPDATE S r_reference_option - DELETE shift, and go to state 1120 - UPDATE shift, and go to state 1121 + DELETE shift, and go to state 1122 + UPDATE shift, and go to state 1123 -state 1113 +state 1115 208) r_opt_MATCH : MATCH S FULL _ S S_SPACE shift, and go to state 3 - S go to state 1122 + S go to state 1124 -state 1114 +state 1116 209) r_opt_MATCH : MATCH S PARTIAL _ S S_SPACE shift, and go to state 3 - S go to state 1123 + S go to state 1125 -state 1115 +state 1117 210) r_opt_MATCH : MATCH S SIMPLE _ S S_SPACE shift, and go to state 3 - S go to state 1124 + S go to state 1126 -state 1116 +state 1118 270) r_opt_TABLESPACE_equal_with_val : TABLESPACE S _ opt_equal r_tablespace_name S_EQUAL shift, and go to state 84 $default reduce using rule 375 (opt_equal) - opt_equal go to state 1125 + opt_equal go to state 1127 equal go to state 358 -state 1117 +state 1119 119) r_opt_NODEGROUP_equal_with_val : NODEGROUP _ S S_SPACE shift, and go to state 3 - S go to state 1126 + S go to state 1128 -state 1118 +state 1120 272) r_partition_subpartition_share : r_opt_STORAGE_ENGINE_equal_with_val r_opt_COMMENT_equal_with_val r_opt_DATA_DIRECTORY_equal_with_val r_opt_INDEX_DIRECTORY_equal_with_val r_opt_MAX_ROWS_equal_with_val r_opt_MIN_ROWS_equal_with_val r_opt_TABLESPACE_equal_with_val r_opt_NODEGROUP_equal_with_val _ $default reduce using rule 272 (r_partition_subpartition_share) -state 1119 +state 1121 255) r_opt_partition_values : VALUES S LESS S THAN S left_paren expr right_paren _ $default reduce using rule 255 (r_opt_partition_values) -state 1120 +state 1122 215) r_opt_ON_DELETE_and_UPDATE : ON S DELETE _ S r_reference_option 216) r_opt_ON_DELETE_and_UPDATE : ON S DELETE _ S r_reference_option ON S UPDATE S r_reference_option S_SPACE shift, and go to state 3 - S go to state 1127 + S go to state 1129 -state 1121 +state 1123 217) r_opt_ON_DELETE_and_UPDATE : ON S UPDATE _ S r_reference_option S_SPACE shift, and go to state 3 - S go to state 1128 + S go to state 1130 -state 1122 +state 1124 208) r_opt_MATCH : MATCH S FULL S _ $default reduce using rule 208 (r_opt_MATCH) -state 1123 +state 1125 209) r_opt_MATCH : MATCH S PARTIAL S _ $default reduce using rule 209 (r_opt_MATCH) -state 1124 +state 1126 210) r_opt_MATCH : MATCH S SIMPLE S _ $default reduce using rule 210 (r_opt_MATCH) -state 1125 +state 1127 270) r_opt_TABLESPACE_equal_with_val : TABLESPACE S opt_equal _ r_tablespace_name S_IDENT_NORMAL shift, and go to state 76 S_BACKTICK_IN shift, and go to state 56 - r_tablespace_name go to state 1129 + r_tablespace_name go to state 1131 ident go to state 368 raw_ident go to state 55 -state 1126 +state 1128 119) r_opt_NODEGROUP_equal_with_val : NODEGROUP S _ $default reduce using rule 119 (r_opt_NODEGROUP_equal_with_val) -state 1127 +state 1129 215) r_opt_ON_DELETE_and_UPDATE : ON S DELETE S _ r_reference_option 216) r_opt_ON_DELETE_and_UPDATE : ON S DELETE S _ r_reference_option ON S UPDATE S r_reference_option - SET shift, and go to state 1132 + SET shift, and go to state 1134 RESTRICT shift, and go to state 112 CASCADE shift, and go to state 113 - NO shift, and go to state 1133 + NO shift, and go to state 1135 - r_reference_option go to state 1130 - r_RESTRICT_or_CASCADE go to state 1131 + r_reference_option go to state 1132 + r_RESTRICT_or_CASCADE go to state 1133 -state 1128 +state 1130 217) r_opt_ON_DELETE_and_UPDATE : ON S UPDATE S _ r_reference_option - SET shift, and go to state 1132 + SET shift, and go to state 1134 RESTRICT shift, and go to state 112 CASCADE shift, and go to state 113 - NO shift, and go to state 1133 + NO shift, and go to state 1135 - r_reference_option go to state 1134 - r_RESTRICT_or_CASCADE go to state 1131 + r_reference_option go to state 1136 + r_RESTRICT_or_CASCADE go to state 1133 -state 1129 +state 1131 270) r_opt_TABLESPACE_equal_with_val : TABLESPACE S opt_equal r_tablespace_name _ $default reduce using rule 270 (r_opt_TABLESPACE_equal_with_val) -state 1130 +state 1132 215) r_opt_ON_DELETE_and_UPDATE : ON S DELETE S r_reference_option _ 216) r_opt_ON_DELETE_and_UPDATE : ON S DELETE S r_reference_option _ ON S UPDATE S r_reference_option - ON shift, and go to state 1135 + ON shift, and go to state 1137 $default reduce using rule 215 (r_opt_ON_DELETE_and_UPDATE) -state 1131 +state 1133 221) r_reference_option : r_RESTRICT_or_CASCADE _ $default reduce using rule 221 (r_reference_option) -state 1132 +state 1134 222) r_reference_option : SET _ S null S_SPACE shift, and go to state 3 - S go to state 1136 + S go to state 1138 -state 1133 +state 1135 223) r_reference_option : NO _ S ACTION S S_SPACE shift, and go to state 3 - S go to state 1137 + S go to state 1139 -state 1134 +state 1136 217) r_opt_ON_DELETE_and_UPDATE : ON S UPDATE S r_reference_option _ $default reduce using rule 217 (r_opt_ON_DELETE_and_UPDATE) -state 1135 +state 1137 216) r_opt_ON_DELETE_and_UPDATE : ON S DELETE S r_reference_option ON _ S UPDATE S r_reference_option S_SPACE shift, and go to state 3 - S go to state 1138 + S go to state 1140 -state 1136 +state 1138 222) r_reference_option : SET S _ null NULL shift, and go to state 452 - null go to state 1139 + null go to state 1141 -state 1137 +state 1139 223) r_reference_option : NO S _ ACTION S - ACTION shift, and go to state 1140 + ACTION shift, and go to state 1142 -state 1138 +state 1140 216) r_opt_ON_DELETE_and_UPDATE : ON S DELETE S r_reference_option ON S _ UPDATE S r_reference_option - UPDATE shift, and go to state 1141 + UPDATE shift, and go to state 1143 -state 1139 +state 1141 222) r_reference_option : SET S null _ $default reduce using rule 222 (r_reference_option) -state 1140 +state 1142 223) r_reference_option : NO S ACTION _ S S_SPACE shift, and go to state 3 - S go to state 1142 + S go to state 1144 -state 1141 +state 1143 216) r_opt_ON_DELETE_and_UPDATE : ON S DELETE S r_reference_option ON S UPDATE _ S r_reference_option S_SPACE shift, and go to state 3 - S go to state 1143 + S go to state 1145 -state 1142 +state 1144 223) r_reference_option : NO S ACTION S _ $default reduce using rule 223 (r_reference_option) -state 1143 +state 1145 216) r_opt_ON_DELETE_and_UPDATE : ON S DELETE S r_reference_option ON S UPDATE S _ r_reference_option - SET shift, and go to state 1132 + SET shift, and go to state 1134 RESTRICT shift, and go to state 112 CASCADE shift, and go to state 113 - NO shift, and go to state 1133 + NO shift, and go to state 1135 - r_reference_option go to state 1144 - r_RESTRICT_or_CASCADE go to state 1131 + r_reference_option go to state 1146 + r_RESTRICT_or_CASCADE go to state 1133 -state 1144 +state 1146 216) r_opt_ON_DELETE_and_UPDATE : ON S DELETE S r_reference_option ON S UPDATE S r_reference_option _ diff --git a/spec/parser_spec.rb b/spec/parser_spec.rb index 41072ba..6f23c9f 100644 --- a/spec/parser_spec.rb +++ b/spec/parser_spec.rb @@ -188,6 +188,17 @@ def test Address varchar ( 255 ) , City varchar ( 255 ) ) ") end + it 'tests for CURRENT_TIMESTAMP with pricision' do + @result = @evaluator.parse("CREATE TABLE t1 +( +ts timestamp(6) DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6), +dt datetime(6) DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6) +)") + + test.to eq(" CREATE TABLE t1 ( ts timestamp ( 6 ) DEFAULT CURRENT_TIMESTAMP ( 6 ) ON UPDATE CURRENT_TIMESTAMP ( 6 ) , \ +dt datetime ( 6 ) DEFAULT CURRENT_TIMESTAMP ( 6 ) ON UPDATE CURRENT_TIMESTAMP ( 6 ) ) ") + end + it 'tests for empty backtick' do @result = @evaluator.parse(" DROP TABLE ``") test.to eq(" DROP TABLE `` ")